1

私がやりたいことは、任意の .xml ファイルを取り、それを VB コードのオブジェクトに変換することです。私のプログラムは、Web サイトから .xml ファイルを取得し、それをオブジェクトに変更します。次に、.xml ファイルから作成されたこれらのオブジェクトに対してクエリを実行します。次に、これらのクエリをデータ グリッドに出力します。

問題は、1 つの特定の .xml ファイルでこれらすべてを行う方法を知っているということです。.xml ファイル内のフィールドへの参照を配置して、オブジェクトに変更しただけです。しかし、さまざまなフィールドを持つユーザーがアップロードできる .xml を変更することになると、途方に暮れます。

とにかくこれを行うことはありますか?

4

1 に答える 1

1

System.Xml名前空間と名前空間を使用して XML コンパイラを作成できSystem.Reflection.Emitます。

しかし、実行時まで構造がわからないオブジェクトを照会するという課題に直面することになります。

より良いオプションは、xml を にロードして、XmlDocumentそれらに対して XPath または LINQ クエリを実行することです。オブジェクトの Hisenburg の性質を考えると、XPath である可能性が最も高いです。

Dim tDoc as XmlDocument = New XmlDocument
Dim tNodes As XmlNodeList = Nothing

tDoc.Load(file_path)
tNodes = tDoc.SelectNodes("xpath query goes here")
For Each tNode As XmlNode In tNodes
  ' Do something with the Node
Next
于 2013-02-07T20:37:59.003 に答える