using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net.Http; using System.Runtime.Serialization; using System.Runtime.Serialization.Json; using System.Text; using System.Threading.Tasks; namespace Hello_Pro.App_Code { class myCoordinatesProxy { public static async Task getmyCoordinates(string address) { var http = new HttpClient(); var response = await http.GetAsync(String.Format("http://maps.google.com/maps/api/geocode/json?address={0}&sensor=false", Uri.EscapeDataString(address))); var result = await response.Content.ReadAsStringAsync(); var serializer = new DataContractJsonSerializer(typeof(RootObject_AutoLocationCoordinates)); var ms = new MemoryStream(Encoding.UTF8.GetBytes(result)); var data = (RootObject_AutoLocationCoordinates)serializer.ReadObject(ms); return data; } } [DataContract] public class AddressComponent_AutoLocationCoordinates { [DataMember] public string long_name { get; set; } [DataMember] public List types { get; set; } } [DataContract] public class Location_AutoLocationCoordinates { [DataMember] public double lat { get; set; } [DataMember] public double lng { get; set; } } [DataContract] public class Geometry_AutoLocationCoordinates { [DataMember] public Location_AutoLocationCoordinates location { get; set; } [DataMember] public string location_type { get; set; } } [DataContract] public class Result_AutoLocationCoordinates { [DataMember] public List address_components { get; set; } [DataMember] public List types { get; set; } } [DataContract] public class RootObject_AutoLocationCoordinates { [DataMember] public List results { get; set; } [DataMember] public Geometry_AutoLocationCoordinates geometry { get; set; } [DataMember] public string status { get; set; } } }
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)