1

何時間もグーグル検索しましたが、何も見つかりませんでした。

オンライン XML サービスから読み取る Metro アプリを作成しようとしています。XMLを取得することは問題ではありません。私は単にこのようにしています->

var xmlDoc = await XmlDocument.LoadFromUriAsync(new Uri(url));

しかし、今の問題は、それをリストまたはこのように読みやすいものに変換する方法です。

読みたい XML は非常に巨大で、foreach ですべてのノードを処理したくありません。

すべてのノードと値として innerText を持つ単純な配列/リストはすばらしいでしょう。

これは可能ですか?はいの場合..どうやって?

私のXMLの構造はこのようなものです - >

<?xml version="1.0" encoding="UTF-8"?>

<city>

... <credit>

...

</credit>

<forecast>

<date value="2013-11-08">

...

<time value="06:00">

...

</time>

<time value="11:00">

...

</time>

<time value="17:00">

...

</time>

<time value="23:00">

...

</time>

...

</date>

<date value="2013-11-09">

<same content here>

</date>

<date value="2013-11-09">

<same content here>

</date>

</forecast>

</city>

ご覧のとおり、XML には多くの情報があり、ほぼすべての情報が必要です。Actionscriptでは、XMLListでそれを実現し、コンテンツを含む日付タグの3つのリストを作成するので、使用できます

xmllist1.time[0] - xmllist1.time[3] xmllist2.time[0] - xmllist2.time[3] xmllist3.time[0] - xmllist3.time[3]

私のデータを取得します。

そして今、私はこの XMLList を C# で使用したいと考えています...それが可能であることを願っています... Thx 4 ヘルプ

4

1 に答える 1

0

私があなたを正しく理解していれば、xml から「都市」項目のリストを解析したいと考えています。このように XDocument と Linq を使用して同様のことを行いますが、うまくいくはずです。

        XDocument xdoc = <add your code to get xml from url>;
        var ns = xdoc.Root.GetDefaultNamespace();
        var cityList = from query in xdoc.Descendants(ns + "city")
                         select new CityItem
                         {
                             Date = (string)query.Element(ns + "date").Attribute("value").Value,
                             Time = (string)query.Element(ns + "time").Attribute("value").Value
                         };
        public class CityItem
        {
            public string Date {get;set;}
            public string Time {get;set;}
        }
于 2013-11-08T19:30:38.643 に答える