Справка по геокодированию Bing - PullRequest
0 голосов
/ 14 апреля 2011

Я пытаюсь использовать REST API Bing для геокодирования. Но мое значение y всегда равно нулю, когда я проверяю свою базу данных. Любая помощь будет оценена.

private void Bing(geodata address)
{
    try
    {
        string query;
        //Create a new instance for holding geocoded data
        currentdata newaddress = new currentdata();
        newaddress.agency = address.agency;
        newaddress.calltime = address.calltime;
        newaddress.city = address.city;
        newaddress.state = address.state;
        newaddress.incidentType = address.incidentType;
        newaddress.intersection = address.intersection.Replace("&", "and");
        query = newaddress.intersection.ToString() + " " + newaddress.city.ToString() + " " + newaddress.state.ToString();
        // query = query.Replace("&", "and");
        //Geocoder returns data in XML format so we need to
        //create a new instance of XMLTextReader and provide an url
        XmlTextReader reader = new XmlTextReader
            ("http://dev.virtualearth.net/REST/v1/Locations/" + query + "?o=xml&key=MYBINGKEY");

        //Specify the way how white space is handled
        reader.WhitespaceHandling = WhitespaceHandling.Significant;

        //Start reading geocoded data
        while (reader.Read())
        {
            string node = reader.Name.ToString();  //current node in XML document
            string value = reader.ReadString();  //value/inner text of current XML node

            switch (node)
            {
                case "Name":
                    newaddress.intersection = value;
                    break;
                case "Latitude":
                    newaddress.y = double.Parse(value);
                    break;
                case "Longitude":
                    newaddress.x = double.Parse(value);
                    break;
                default:
                    continue;
            }
        }
        //Add geocoded address to our table
        cD.currentdatas.InsertOnSubmit(newaddress);
        cD.SubmitChanges();
    }
    catch
    {
    }
}

1 Ответ

1 голос
/ 14 апреля 2011

Содержит ли информация о вашем местоположении точку (.), Запятую (,), двоеточие (:) или знак плюс (+)? Вы должны использовать синтаксис неструктурированных URL, если это так. Информация здесь :

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...