XmlSerializer - >不区分大小写

时间:2010-11-08 10:42:14

标签: c# xml-serialization

我想知道是否有办法使用XmlSerializer反序列化具有不同外壳的对象。

让我们说我的对象是

Class A
{
  public String Str{get;set;}
}

我有以下XML文件,id喜欢反序列化:

<root><StR>Hello</StR></root>

<root><STR>Hello</STR></root>

<root><str>Hello</str></root>

任何建议/想法?欢迎操纵DOM等方法:)

此致

3 个答案:

答案 0 :(得分:1)

XML区分大小写,所以在这种情况下我会说它会失败。因此,您应该使用正则表达式来清理数据,因为DOM会出现XML问题。

答案 1 :(得分:1)

xml_str=xml_str.Replace("StR>","Str>");

或者在您离开之前简单地执行XSLT转换

答案 2 :(得分:0)

由于Xml区分大小写,因此无法自动实现此行为。解决问题的一种方法是实现IXmlSerializable接口。这样您就可以在ReadXml(XmlReader reader)方法中控制xml反序列化。