1

我正在尝试使用包含名为“URL”的节点的 DataContractSerializer 来反序列化 XML 文件。像这个:

<?xml version="1.0" encoding="utf-8"?>
<products>
<product ID="8717973147527">
<name>Something</name>
<price currency="EUR">9.00</price>
<URL>http://google.com</URL>
<images>
<image>http://google.com</image>
</images>
</product>
</products>

反序列化后映射到 URL 的属性保持为空。如果我将 xml 节点重命名为“url”(小写)或任何其他单词,它工作正常。问题是我无法更改 XML,所以我必须找到一种反序列化它的方法。谁能帮我?

4

1 回答 1

1

您可以使用 将XmlAttributeXML 文件中的名称设置为:

[Serializable]
public class ClassName
{
    // Here set the Xml Name Attribute
    [XmlAttribute("URL")]
    string Url;  

...
于 2013-05-10T17:49:18.050 回答