私はXMLReader
C# .net 4.0 を使用して、XML の小さなスニペットを検索しています。XML で特定の要素を検索したいのですが、XMLReader.ReadToFollowing("name")
メソッドを使用して要素を検索しています。XML ドキュメント内の要素の順序がわかりません。それらは異なるシーケンスにあるか、完全に欠落しています。順序は重要ではありませんが、要素が欠落している場合は例外をスローします。
XMLReader は前方のみであるため、探している最初の要素が XML ドキュメントの最後の値である場合、追加の読み取りは失敗します。
検索ごとに新しい XMLReader を作成することを考えていました。検索する要素のセットはごくわずかであり、XML はそれほど大きくないため、オーバーヘッドが大きくなるとは思いませんが、間違っている可能性があります。
要素の順序がわからない場合に XML を検索するためのより良いライブラリはありますか? それとも、XML の順序の欠如は XML 仕様に違反しているのでしょうか?
具体的には、単純な XML があるとします。頭と 10 人の子供。
<sometag>
<element1>data</element1>
<element2>data</element2>
.
.
.
<element10>data</element10>
</sometag>
これらの要素を見つけるために 5 つの XMLReader を開くのは非効率でしょうか? 1 つのリーダーを使用して各要素をステップ実行することもできますが、その場合は、見つけた要素を追跡する必要があります。