xDocumentの一部を切り捨ててxDocumentを取得する方法はありますか?切断すると、選択されたノードを保持することを意味します。
私はこのようなXMLがあります。
狭いxdocumentをC#
<something 1>
<object>
Name="The only object I need"
<lev1>
<lev2>
Name= "Attribute I need"
</lev2>
<lev2>
Name= "Attribute I also need"
</lev2>
</lev1>
</object>
<object>
Name="Thing I want to remove"
<lev1>
<lev2>
Name= "useless attribute"
</lev2>
<lev2>
Name= "second useless atribute"
</lev2>
</lev1>
</object>
</something 1>
を私は名前=「私は必要と属性」を持つ唯一のオブジェクトを含むxDocumentオブジェクトが必要です。私はそれが簡単だと知っていますが、私はそれを見つけることができません。
編集:
私は非常に巨大なXMLファイルについてたくさん話しています。したがって、私は削除するものだけを選択することはできません。
そして、私の答えが無効に見えるように質問を変更しました。しないでください。次に、あなたのXMLはおそらく* *そうではありません - 私は実際には 'Name ="という形式のテキストノードではなくXML属性を持っていると思われます。あなたの質問を以前のバージョンに戻すことをお勧めします。より一般的な側面に対処するために私の答えを編集します。 –
ネストされた要素のうちの* 1つだけが必要な場合に何が起こるかという点についても、あなたの質問はかなり不明です。トップレベルから要素を取り除こうとするか、ツリーのすべての種類のビットを整理しようとしていますか? –
私はlev2内のすべての名前をname = "オブジェクトが必要なオブジェクト"内に必要としています。私はxdoc.Elements()を試してみました。(x => x.Attribute(xmlns + "Name")Value.ToString()== "必要なオブジェクトは唯一")FirstOrDefault();しかし、私は "x変数が呼び出されるように設定されていない"のようなエラーをドイツ語から翻訳しています... –