API-интерфейсы Bing Maps и Microsoft.Phone.Controls.Maps - PullRequest
1 голос
/ 21 декабря 2010

У меня странная проблема.Я не знаю, является ли это проблемой или нет.Буду очень признателен за любую помощь.

Я занимаюсь разработкой картографического приложения.У меня уже был рабочий код.Сейчас я пытаюсь интегрировать его с другим проектом.Но когда я добавляю ссылку на службу в Bing Route и Geocode, у меня возникают следующие проблемы:

Файл сгенерированного автоматически файла reference.cs содержит его для нового проекта

 public partial class RequestBase : object, System.ComponentModel.INotifyPropertyChanged {

    private TourGuideApp.Bing.Route.Credentials CredentialsField;

, пока онэто для предыдущего рабочего проекта

public partial class RequestBase : object, System.ComponentModel.INotifyPropertyChanged {

    private Microsoft.Phone.Controls.Maps.Credentials CredentialsField;

То же самое происходит для поля Location. У меня есть новое поле Location в сервисе Bing Route, которого нет в более раннем проекте

  [System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
[System.Runtime.Serialization.DataContractAttribute(Name="Location", Namespace="http://dev.virtualearth.net/webservices/v1/common")]
[System.Runtime.Serialization.KnownTypeAttribute(typeof(TourGuideApp.Bing.Route.GeocodeLocation))]
[System.Runtime.Serialization.KnownTypeAttribute(typeof(TourGuideApp.Bing.Route.UserLocation))]
public partial class Location : object, System.ComponentModel.INotifyPropertyChanged {

, поэтомуя смог использовать Microsoft.Phone.Controls.Maps.Location ... но если я перенесу тот же код в новый проект, он говорит, что

'Location' - это неоднозначная ссылка между 'Microsoft.Phone.Controls.Maps.Platform.Location 'и' TourGuideApp.Bing.Route.Location '

Подобное происходит с провайдером учетных данных

Буду признателен за любую помощь

Спасибо иС уважением Сурья

1 Ответ

0 голосов
/ 19 мая 2011

Это означает, что эти dll-ы содержат классы с одинаковыми именами - в вашем случае Location. Что вам нужно сделать, так это то, что когда вы используете тип Location, вы даете полную ссылку.

Вместо:

private Location something;

Вы пишете

private Microsoft.Phone.Controls.Maps.Location something;

Таким образом, компилятор знает, какое местоположение вы имеете в виду.

...