0

xml:

http://wsf.cdyne.com/WeatherWS/Weather.asmx/GetCityWeatherByZIP?ZIP=48183

これが私のコードです:

    private void GetWeather()
    {
        WebClient web = new WebClient();
        web.DownloadStringCompleted += new DownloadStringCompletedEventHandler(web_DownloadStringCompleted);
        string uriAddr = "http://wsf.cdyne.com/WeatherWS/Weather.asmx/GetCityWeatherByZIP?ZIP=48183";
        web.DownloadStringAsync(new Uri(uriAddr));
    }
    void web_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
    {
        if (e.Error != null)
        {
            MessageBox.Show("error");

        }

        XElement XmlWeather = XElement.Parse(e.Result);

        foreach (var item in XmlWeather.Descendants("WeatherReturn"))
        {
            // code to get element info
        }

    }

foreachステートメントの中に入ることすらできません。助言がありますか?

4

1 に答える 1

1

名前空間を含める必要があります。

XNamespace ns = "http://ws.cdyne.com/WeatherWS/";

その後、電話をかけることができますXmlWeather.Descendants(ns + "WeatherReturn")

于 2012-08-27T23:45:55.567 に答える