注意:XMLIgnore不是答案!
好的,所以继我关于XML 序列化和继承类型的问题之后,我开始将该代码集成到我正在处理的应用程序中,愚蠢地认为一切都会顺利......
我遇到了几个实现IEnumerable和ICollection<T>的类的问题
这些问题是,当 XMLSerializer 开始序列化这些时,它将它们视为外部属性,而不是使用我们希望它的属性(即带有AbstractXmlSerializer的属性)它来到这里并跌倒(由于类型不匹配),几乎让我们回到第一方。您也不能使用XmlIgnore属性来装饰这些方法,因此我们不能以这种方式阻止它。
我目前的解决方案是删除接口实现(在这个当前的应用程序中,这没什么大不了的,只是让代码更漂亮)。
我需要吞下我对这个的骄傲并接受它做不到吗?我知道我已经推动并从 XmlSerializer 中得到了比预期更多的东西:)
编辑
我还应该补充一点,我目前正在使用框架 2。
更新
我已经接受了lomaxx 的回答。在我的情况下,我实际上无法做到这一点,但我知道它会起作用。由于他们没有其他建议,我最终从代码中删除了接口实现。