假设我有多个像这样的xml数据:
<entry>
<url><![CDATA[http://triada.kh.ua/made/?email=abuse@example.com]]></url>
<phish_id>3779980</phish_id>
<phish_detail_url>http://www.phishtank.com/phish_detail.php?phish_id=3779980</phish_detail_url>
<details>
<detail>
<ip_address>93.190.41.34</ip_address>
<cidr_block>93.190.40.0/21</cidr_block>
<announcing_network>6849</announcing_network>
<rir>ripencc</rir>
<detail_time>2016-01-24T01:00:58+00:00</detail_time>
</detail>
</details>
<submission>
<submission_time>2016-01-22T22:42:56+00:00</submission_time>
</submission>
<verification>
<verified>yes</verified>
<verification_time>2016-03-28T14:15:01+00:00</verification_time>
</verification>
<status>
<online>yes</online>
</status>
<target>Internal Revenue Service</target>
</entry>
假设我有多种这种xml数据如何在不覆盖它们的情况下显示datagridview中的值?我尝试了以下代码:
foreach (XElement result in query)
{
string display = result.ToString();
XmlReader xmlFile;
xmlFile = XmlReader.Create(new StringReader( display));
DataSet ds = new DataSet();
ds.ReadXml(xmlFile);
dataGridView1.DataSource = ds.Tables[0];
}
但我的表被覆盖了,它只显示最后一个XmlData.Please Help.Thanks提前
答案 0 :(得分:0)
数据网格不能有多个数据源。如果您有多个数据片段,则需要将它们合并在一起,然后将其绑定到网格。在您的示例中,您可以使用Dataset.Merge方法。
但是......我不确定您是如何获取数据的,但似乎您不需要读取每个XML元素并从中创建数据集。您应该立即读取所有元素,然后将其绑定到网格。