我已经成功地将xml文件加载到数据集中(我可以在数据网格中显示它),我想将它加载到几个文本框中(大约10或12)。
xml有大约60个字段,我不熟悉获取他们的名字(虽然我知道我想要哪些)。
这就是我所拥有的:
Dim ds As New DataSet
ds.ReadXml(<PATH>)
xml的一部分的一瞥:
<ide>
<cUF>35</cUF>
<cNF>623670848</cNF>
</ide>
<emit>
<CNPJ>06949571000153</CNPJ>
<xFant>TSA</xFant>
我想要(例子)
来自IDE的cUF
来自tsa的cFant
我有txt1和txt2作为文本框,我该怎么做才能得到那些?
答案 0 :(得分:1)
查看System.XML命名空间,然后在SelectSingleNode()函数中使用正确的XPath表达式执行类似的操作:
private XmlDocument _doc = new XmlDocument();
_doc.Load(HttpContext.Current.Request.MapPath("~/yourdocpath.xml"));
XmlNode n = _doc.SelectSingleNode("ide/cuf");
然后设置文本框:
txt1.Text = n.InnerText;
答案 1 :(得分:1)
如果您拥有数据集中的数据,则可以通过几种方式获取信息。有一种方法可以直接从XML中读取它,并且有表格/行/列方法可以将其从数据集中删除。
如果您在设计时知道列名称:
理论值:
txt1.Text = DS.Tables[<tablename>].Rows[<rowID>].ItemArray[<ColumnIndex>].ToString();
实践:
txt1.Text = DS.Tables["ide"].Rows[0].ItemArray[0].ToString();
如果您在设计时不知道列名:
理论值:
txt1.Text = DS.Tables(<tableID>).Rows(<rowID>).Item(<ColumnID>)
实践:
txt1.Text = DS.Tables[0].Rows[0].ItemArray[0].ToString();
小心使用索引号码虽然...有时他们会让你陷入困境。