Разбор и чтение ответа от сервиса BEST Maps BEST - PullRequest
0 голосов
/ 28 ноября 2018

Использование Bing Maps Rest Service для определения долготы / широты для адреса.Я получаю ответ обратно хорошо, но у меня проблемы с правильным синтаксисом для ссылки на поля long / lat (см. Снимок экрана отладчика).Я пробовал

latitude = x.ResourceSets[0].Resources[0].GeocodePoints[0].Coordinates[0];

longitude = x.ResourceSets[0].Resources[0].GeocodePoints[0].Coordinates[1];

, но они не компилируются.

Вот вызов остальной службы ... (не на снимке экрана).

      private void GetResponse(Uri uri, Action<Response> callback)
  {
     System.Net.WebClient wc = new WebClient();
     wc.OpenReadCompleted += (o, a) =>
     {
        if (callback != null)
        {
           DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(Response));
           callback(ser.ReadObject(a.Result) as Response);
        }
     };
     wc.OpenReadAsync(uri);
  }

Снимок экрана Studio Debugging

1 Ответ

0 голосов
/ 28 ноября 2018

Исходя из вашего снимка экрана, кажется, что x.ResourceSets[0].Resources[0] имеет тип Location, тогда как базовый класс для этого массива - Resource.Попробуйте привести его к просмотру перед тем, как получить доступ к значениям:

...