Windows phone 8 如何在windows应用程序中获取路线距离

Windows phone 8 如何在windows应用程序中获取路线距离,windows-phone-8,maps,bing-maps,Windows Phone 8,Maps,Bing Maps,我正在使用bing地图创建windows mobile应用程序。我有起点和终点的纬度和经度。我正在获取空中路线,但我的要求是找到路线距离,即我的地图上显示的两点之间的实际道路距离。请帮帮我。谢谢您可以向Bing的驾驶距离计算器申请api密钥。在获得密钥后,进行http请求,如下所示 "http://dev.virtualearth.net/REST/V1/Routes/Driving?o=xml&wp.0=\\firstaddress&wp.1=\\secondaddress&

我正在使用bing地图创建windows mobile应用程序。我有起点和终点的纬度和经度。我正在获取空中路线,但我的要求是找到路线距离,即我的地图上显示的两点之间的实际道路距离。请帮帮我。谢谢

您可以向Bing的驾驶距离计算器申请api密钥。在获得密钥后,进行http请求,如下所示

 "http://dev.virtualearth.net/REST/V1/Routes/Driving?o=xml&wp.0=\\firstaddress&wp.1=\\secondaddress&distanceUnit=mi&key=\\yourkeyhere"
String text = //http response
text = text.Substring(text.IndexOf("<TravelDistance>") + 16);
text = text.Remove(text.IndexOf("</TravelDistance>"));
double miles = Double.Parse(text);
这里有一个更深入的细节链接。。。

这是你可以拿到钥匙的地方。。。

我相信距离可以这样解析出来

 "http://dev.virtualearth.net/REST/V1/Routes/Driving?o=xml&wp.0=\\firstaddress&wp.1=\\secondaddress&distanceUnit=mi&key=\\yourkeyhere"
String text = //http response
text = text.Substring(text.IndexOf("<TravelDistance>") + 16);
text = text.Remove(text.IndexOf("</TravelDistance>"));
double miles = Double.Parse(text);
String text=//http响应
text=text.Substring(text.IndexOf(“”+16);
text=text.Remove(text.IndexOf(“”);
double miles=double.Parse(文本);

我亲爱的朋友,谢谢你的支持。我按照步骤拿到了钥匙。当我实现上面给出的url时,我得到了一个xml文件,其中我获得了旅行距离。现在的问题是如何仅获取此xml的旅行距离并在我的应用程序中显示。您可以通过将“o”参数设置为“json”来检索“json”内容,答案会更小。然后,您可以使用JavaScriptSerializer或Json.Net将其反序列化为C#中的“动态”对象,以便仅访问所需的属性,即旅行时间。有关如何在.Net中使用Bing Maps REST服务的文档可在此处找到:另外,请确保对您的位置值进行编码/转义,否则,特殊字符将导致请求失败。请在此处查看Bing地图的最佳实践: