0
我试图反序列化一些由某些API提供的XML。然而,这个API是愚蠢的,例如,布尔是不正确的,但真实。并且具有元件用C#自定义解串器来读取XML
[XmlElement("Foo")]
public bool Foo { get;set; }
,然后匹配的XML:
<...><Foo>True</Foo></...>
是不行的,因为真正的不是布尔的有效表示(该API是用Python编写的,这一点,我认为,更宽容)。
有什么办法可以在我的房产Foo
上投入一些属性来对系统说:当你遇到这个元素时,把它通过这个转换器类?
编辑: XML很大,其中大部分是愚蠢的,而不是直接可转换的对象,如234KB
,我需要解析的确切值。
我是否需要为它们中的每一个编写包装属性?
是结构复杂,以至于你真的需要使用内置的XML序列化?你能用手做吗? LINQ to XML通常使这非常简单。 – 2013-05-11 17:44:59
在python中,true是区分大小写的,必须大写。 – Senjai 2013-05-11 17:46:39
@Jon好点,但我不知道是否有可能的方式我想要它而不使用自定义类型(而不是bool)。我在编写自定义转换器类时没有问题。 – Snake 2013-05-11 17:52:59