我对XMLReader类有一个奇怪的问题。我从URL获取原子提要,并且xml树的一些元素的命名如下:
<element:title>Hello World!</element:title>
<element:text>This is just an example</element:text>
<element:id>1</element:id>
我正在使用
[XmlElement("element:id")]
但这不起作用。当我查看代码时,我看到读者将其解析为
element_x003A_id
但如果我使用
[XmlElement("element_x003A_id)]
我一无所获。我试图摆弄Xml编码,但该属性是只读的。我怎么能逃避这个,所以我可以得到元素的内容(如果元素没有分号就可以正常工作)?
答案 0 :(得分:4)
element
是名称空间别名。在某个地方,你有(通常在文件的顶部)
<foo ... xmlns:element="http://something/blah/blog">
“http:// something / blah / blog”非常重要。基本上,你需要:
[XmlElement("id", Namespace="http://something/blah/blog")]
public int Id {get;set;}
或者因为它会被重复使用:
const string MyNamespace = "http://something/blah/blog";
//...
[XmlElement("id", Namespace=MyNamespace)]
public int Id {get;set;}