.NET 4.0 で利用できる DLR 対応の XML ナビゲーションおよび読み取りクラスはありますか? たとえば、次の XML があるとします。
<foo>
<bar>foobar is here</bar>
<bar>foobar is also here</bar>
<baz>foobar is not here</bar>
</foo>
この XML を次のようにナビゲートする簡単な方法はありますか。
var doc = SomeDlrEnabledParser.Parse (xmlString);
foreach (var node in doc.foo.bar)
{
if (node == "foobar is here")
DoSomething();
else
DoSomethingElse();
}
名前空間、属性と要素、コレクションと単一要素の区別、エンコードされた XML とテキストなど、上記のアプローチが問題になる理由はたくさんあります。
しかし、私が扱っている XML の多くは非常に単純で読み取り専用であり、4.0 より前のバージョンで単純な XML を操作する際の特徴である「括弧と引用符のスープ」を回避する代わりに、適切なデフォルトの動作を喜んで受け入れます。世界。
たとえば、「ドット」演算子は、サブ要素名の前に属性名をチェックできます。または、コレクション以外の操作が最初の要素に自動的に適用されます (jQuery のように)。
.NET 4.0 Framework クラス ライブラリには、このようなものが含まれていますか? そうでない場合、適切なオープン ソース プロジェクトまたは DLR 対応の XML ライブラリのサンプルに関する推奨事項はありますか?