1

私はこの構造のXML形式を持っています(実際の例は非常に長く複雑ですが、これはそれを説明するはずです):

<document>    <post>
      <author>Bill Smith</author>
      <subject>Test Article</subject>
      <dates>
          <uploaded>some date</uploaded>
          <published>some date</published>
      </dates>
    </post>
    <post>
      <author>Bill Smith</author>
      <subject>Test Article</subject>
      <dates>
          <uploaded>some date</uploaded>
          <published>some date</published>
      </dates>
    </post>  </document>

それぞれの投稿を引き出すための簡単なクエリを作成しました。著者と主題をうまく理解することはできますが、日付の部分にドリルダウンして公開されたビットを引き出す方法がわかりません。

ありがとう

4

1 に答える 1

3

次のLINQを使用して、最初の「公開された」要素を取得できます。

    XDocument document = XDocument.Load(@"D:\XMLFile1.xml", LoadOptions.None);
    XElement element = document
    .Descendants("document")
            .Descendants("post")
    .Descendants("dates")
    .Descendants("published")
    .First();
string publishedDate = element.Value;

'Descendants'メソッドのパラメーターとして任意の式を指定できます。文字列としてxmlを使用している場合は、以下を使用してxmlを文字列に読み込むことができます。XDocument

XDocument.Parse();

nullをチェックすることを忘れないでください!! :-)

于 2013-02-28T03:39:00.690 に答える