返回null我有一个看起来像这样的XML文件:XML解析为属性
<?xml version="1.0" standalone="yes"?>
<NewDataSet>
<DT100>
<company_id>online00020120523888</company_id>
<template_type>100</template_type>
<import_seq>1</import_seq>
<field_name>cust_acct_no</field_name>
<display_name>Account No</display_name>
<data_type>0</data_type>
<internal_num>0</internal_num>
<internal_info>{}</internal_info>
</DT100>
.
.
.
每个DT100,我想读import_seq和FIELD_NAME到字典中。但是,当我通过调试器时,我得到了import_seq和field_name的空值。这里是我的代码,我不知道我在做什么错误,我使用了一些我写的解析XML的早期代码,所以我认为应该正在工作,但它不是。
XDocument doc = XDocument.Load("foo.xtp");
String feed = doc.ToString();
string import_seq = "";
string field_name = "";
XmlReader r = XmlReader.Create(new StringReader(feed));
Dictionary<string, string> custXML = new Dictionary<string, string>();
r.ReadToFollowing("NewDataSet");
if(r.ReadToDescendant("DT100"))
{
do
{
import_seq = r.GetAttribute("import_seq");
field_name = r.GetAttribute("field_name");
custXML.Add(import_seq, field_name);
}
while (r.ReadToNextSibling("DT100"));
}
非常感谢,
阿曼达
谢谢你,工作就像一个魅力,是的,我仍然在学习我的XML术语! –
@Amanda_Panda我认为这个链接对你很有用http://www.w3schools.com/dtd/dtd_el_vs_attr.asp –