What I want to know is that using Google places API. Basically I want to create a site like www.zomato.com
1) Can I show listing of all restaurants and their individual details with all the details in my city just like Google+ business page?
2) Is is possible to use this API with C#.net?
3) How much Google will charge for this?
Mar*_*des 18
如果我们查看Google Places API的文档,我们可以看到API请求返回的JSON格式.通过使用json2csharp,我们可以轻松生成一个C#模型,用于响应Google Places查询.
public class Location
{
public double lat { get; set; }
public double lng { get; set; }
}
public class Geometry
{
public Location location { get; set; }
}
public class OpeningHours
{
public bool open_now { get; set; }
public List<object> weekday_text { get; set; }
}
public class Photo
{
public int height { get; set; }
public List<string> html_attributions { get; set; }
public string photo_reference { get; set; }
public int width { get; set; }
}
public class Result
{
public Geometry geometry { get; set; }
public string icon { get; set; }
public string id { get; set; }
public string name { get; set; }
public OpeningHours opening_hours { get; set; }
public List<Photo> photos { get; set; }
public string place_id { get; set; }
public double rating { get; set; }
public string reference { get; set; }
public string scope { get; set; }
public List<string> types { get; set; }
public string vicinity { get; set; }
}
public class PlacesApiQueryResponse
{
public List<object> html_attributions { get; set; }
public List<Result> results { get; set; }
public string status { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
通过对Google Places API的简单HTTP请求,我们可以使用Json.NET反序列化查询结果.
using (var client = new HttpClient())
{
var response = await client.GetStringAsync(string.Format("https://maps.googleapis.com/maps/api/place/nearbysearch/json?location={0},{1}&radius=500&type=bar&key=YourAPIKey", latitude, longitude));
var result = JsonConvert.DeserializeObject<PlacesApiQueryResponse>(response);
}
Run Code Online (Sandbox Code Playgroud)