2

从 web 的 xml 获取日出时间和日落时间。这是xml的链接:

http://www.yr.no/sted/Norge/Oslo/Oslo/Blindern/varsel.xml

我尝试使用以下信息: http: //www.jeffblankenburg.com/2010/10/25/31-days-of-windows-phone-day-25-talking-to-external-apis/

我试图通过这样做将他的信息更改为我的信息,但只得到 NullReferenceException:

private void GoButton_Click(object sender, RoutedEventArgs e)
{
    if (NetworkInterface.GetIsNetworkAvailable())
    {
        WebClient twitter = new WebClient();

        twitter.DownloadStringCompleted += new DownloadStringCompletedEventHandler(twitter_DownloadStringCompleted);
        twitter.DownloadStringAsync(new Uri("http://www.yr.no/sted/Norge/Oslo/Oslo/Blindern/varsel.xml"));
    }
}

void twitter_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
{
    if (e.Error != null) return;

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

    string name = xmlTweets.Element("weatherdata").Element("location").Element("country").Value;
    TwitterName.Text = name;

}

这是来自网络的xml文件的剪辑。它很大,但我只需要日落时间和日出时间。请帮忙。

<weatherdata>
<location>
<name>Blindern</name>
<type>Byområde</type>
<country>Norge</country>
<timezone id="Europe/Oslo" utcoffsetMinutes="120"/>
<location altitude="90" latitude="59.9406284402542" longitude="10.7230684724138" geobase="ssr" geobaseid="73738"/>
</location>
<credit>...</credit>
<links>...</links>
<meta>...</meta>
<sun rise="2012-05-19T04:30:13" set="2012-05-19T21:58:34"/>
<forecast>...</forecast>
<observations>...</observations>
</weatherdata>
4

1 回答 1

1

该元素已经在<weatherdata>节点上,因此您无需再次查询它。

string name = xmlTweets.Element("location").Element("country").Value; 
TwitterName.Text = name; 
于 2012-05-19T14:48:21.823 回答