2009-06-30 9 views
0

私は約半日をこの質問の答えを探すのに費やしており、徐々に不満を感じています。私はその応答としてXmlNodeを返すWebサービスで作業しています。ノードでXMLデータ参照を取得し、それをデータグリッドビューで表示したいと考えています。これが可能なら誰でも知っていますか?XmlNodeを取得し、そのデータをDataGridビューで表示する方法はありますか?

私は、次のコードを使用しています:それは例外をスロー

  // submit command to webserver 
     XmlNode response = SubmitToWebserv((XmlElement)IssueNode, state.Get); 

     // create XML reader to read response 
     XmlReader reader = new XmlNodeReader(response); 

     // create a data table to hold response 
     DataTable dt = new DataTable(); 
     dt.ReadXmlSchema(reader); 

     // read data into data table 
     dt.ReadXml(reader); 

:DataTableには、XMLからスキーマ推論をサポートしていません。問題は、スキーマが応答で参照されるXMLに含まれていることです...だから私は迷っています。

答えて

0

DataTableの代わりにDataSetを使用することをお勧めします。私はそれがうまくいくかどうかはわかりませんが、それは意味があります。スキーマに複数の表が含まれている可能性があります。

OTOH、XmlNodeにはスキーマが含まれていましたか?


これをデバッガで見ることをお勧めします。特に、XmlReaderがどのノードに配置されているかを確認してください。ラッピング要素からスキーマへ、次にデータへ、必要に応じて進んでいくことを100%確信しているわけではありません。

<node> 
    <xs:schema/> 
    <data/> 
</node> 

またはスキーマとデータ要素のトップレベルノードである:

また、スキーマとデータをラップ要素があります。これは断片です。

+0

はい、スキーマはXmlNodeに含まれています。これが私が少し混乱している理由です。 –

+0

代わりにDataSetを使用して、データを表示することができました。ありがとうございました。今、ベンダーの文書化されていないWebサービスの回避策を見つける。 ご協力ありがとうStackOverflow! –

関連する問題