0

我從http://www.bingmapsportal.com得到了一個關鍵字,我已經將以下代碼添加到了我的項目中,如同在網絡上演示的一樣。WP7,WPF,VS2010上的Bing地圖憑證無效

在的.xaml文件:

my:Map Height="320" HorizontalAlignment="Stretch" Name="map1" VerticalAlignment="Top" CredentialsProvider="fa0bb238-62bb-41b9-a1e6-459a5e9564a6"/>

(重點已略有修改,以避免濫用)

在.xaml.cs文件:

map1.CredentialsProvider = new ApplicationIdCredentialsProvider("fa0bb238-62bb-41b9-a1e6-459a5e9564a6"); 
GeocodeRequest gReq = new GeocodeRequest(); 
GeocodeServiceClient gSrvc = new GeocodeServiceClient("BasicHttpBinding_IGeocodeService"); 

gReq.Credentials = new Credentials(); 
gReq.Credentials.ApplicationId = "fa0bb238-62bb-41b9-a1e6-459a5e9564a6".ToUpper(); 

gReq.Query = address; 

FilterBase[] filters = new FilterBase[2]; 
filters[0] = new ConfidenceFilter() { MinimumConfidence = Confidence.High }; 

GeocodeOptions gOpt = new GeocodeOptions(); 
gOpt.Filters = filters; 
gReq.Options = gOpt; 

gSrvc.GeocodeCompleted += new EventHandler<GeocodeCompletedEventArgs>(gSrvc_GeocodeCompleted); 
gSrvc.GeocodeAsync(gReq); 

但我無法讓它正常工作,我在地圖本身上收到無效憑證消息,並且在服務器對GeocodeRequest的響應中出現Invalid Credentials異常。

我訪問了20個論壇主題(包括WP7 Bing Maps 'Invalid Credentials' Error),我似乎已經完成了他們正在討論的所有內容或已經發布爲解決方案。

還有其他想法嗎?

回答

2

這是我如何初始化WP7一個GeocodeRequest:

GeocodeService.GeocodeRequest request = new GeocodeService.GeocodeRequest 
{ 
    Culture = CultureInfo.CurrentUICulture.ToString(), 
    Credentials = new GeocodeService.Credentials { ApplicationId = applicationId }, 
    UserProfile = new GeocodeService.UserProfile { DeviceType = GeocodeService.DeviceType.Mobile }, 
    Options = new GeocodeService.GeocodeOptions { Count = 1 }, 
    Query = address, 
}; 

正如你可以看到,我不上的applicationID字符串做ToUpper的(),但我設置用戶配置(以及文化)財產。也許UserProfile.DeviceType = Mobile設置必須符合您的Bing Map API密鑰的類型,這肯定也是Mobile。

也許這在某種程度上是有幫助的。

+0

我已經將我的代碼和我的Bing地圖帳戶中的DeviceType設置爲移動設備,並且仍然在響應中獲得相同的錯誤。 問題是,我甚至無法獲得簡單的地圖以使用網站提供給我的密鑰,它告訴我我使用無效憑據並註冊開發人員帳戶或其他東西。將我的密鑰切換到開發人員(不改變密鑰,請關注你)並不能解決這個問題。 ToUpper只是在那裏測試,如果這是問題,刪除它不會幫助或改變任何東西。 – 2012-02-06 21:27:31

+0

Kalispera Lefteris,我的bing地圖鍵是一個64個字符的字符串,比如'AnF3BcjKhOj ................................. ........ EdVSnpRIdagJ',你看起來像一個GUID。你真的使用正確的鑰匙嗎? – Clemens 2012-02-06 21:35:33

+0

這就是我在網上看到的,它令我感到困惑。你從哪裏獲得這個64個字符的字符串?它是不是在BingMapsPortal.com使用左側的創建密鑰? – 2012-02-06 23:26:13