我正在尝试在Windows Phone 7 silverlight应用程序上使用bing maps控件,它会在地图上显示此错误。
凭据无效,请注册 开发者帐户
我尝试过使用这两个网站中的应用ID:http://www.bing.com/developers和https://www.bingmapsportal.com/
我做错了什么?是否有一些我缺少的帐户设置?作为参考,这是我如何定义控件并与之交互:<my:Map x:Name="MyMap" CredentialsProvider="<<myAppId>>" />
在后面的代码中:
var vm = this.DataContext as ItemViewModel;
Pushpin pushpin = new Pushpin();
Location location = new Location()
{
Latitude = vm.Latitude,
Longitude = vm.Longitude
};
pushpin.Location = location;
MyMap.ZoomLevel = 15;
MyMap.Center = location;
MyMap.Children.Add(pushpin);
答案 0 :(得分:4)
转到http://bingmapsportal.com并使用您的Windows Live ID登录。登录后,点击左侧菜单中的创建或查看密钥。如果您还没有,请通过输入名称,URL和选择类型(移动)来创建应用程序。创建应用程序后,复制长字符串并将其作为CredentialsProvider
属性的值粘贴到XAML中。
<my:Map CredentialsProvider="NOTREALVF7QTW-LZfG0p7-RhSPeGvlfx3fdtgR-Gk_SB-wfF8kCj2J7nI57wjIna" />
答案 1 :(得分:2)
经过多次努力,我终于发现,当Thread.CurrentUICulture设置为不变文化时,会发生这种情况(至少在桌面SL上;不确定WP7)。确保它在App.Startup事件处理程序中设置为特定的文化(也考虑设置Thread.CurrentCulture),例如。
System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("en-US");
当然,您仍然需要AppID设置。