私は、XMLファイルを受け取り、ExpandoObjectsのリストと再帰を利用して渡されるXMLに対してExpandoObjectを動的に生成するクラスを派生させました。
これを返して処理してデータを取得することはできますが、レガシーシステムから取得しているXMLに一貫性がありません。私はそのように単一のノードを取り戻すことができます
<test>
<insured>
<a>BLAH BLAH BLAH</a>
<b>BLAH BLAH BLAH</b>
<c>BLAH BLAH BLAH</c>
</insured>
</test>
また
<test>
<insured>
<a>BLAH BLAH BLAH</a>
<b>BLAH BLAH BLAH</b>
<c>BLAH BLAH BLAH</c>
</insured>
<insured>
<a>BLAH BLAH BLAH</a>
<b>BLAH BLAH BLAH</b>
<c>BLAH BLAH BLAH</c>
</insured>
<insured>
<a>BLAH BLAH BLAH</a>
<b>BLAH BLAH BLAH</b>
<c>BLAH BLAH BLAH</c>
</insured>
</test>
したがって、「被保険者」のキーについては、ExpandoObject
またはを取得していList<ExpandoObject>
ます。返されるタイプを判別するための最も簡単なソリューションを判別しようとしています。
理想的にx.insured.OfType<List<ExpandoObject>>()
は、ブール値またはその性質の何かを返すようなものです。
乾杯