1

我对 XMLReader 类有一个奇怪的问题。我从 URL 获取 atom 提要,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 编码,但该属性是只读的。我怎样才能逃避这个,所以我可以得到元素的内容(如果元素没有分号,它就可以了)?

4

1 回答 1

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;}
于 2012-07-13T07:13:04.090 回答