DataContractSerializer,排序.Net和Mono之间的不一致

时间:2013-07-15 21:34:01

标签: c# xml serialization

对于DataContractSerializer,必须订购XML中的项目。

是“订单”属性。或者按字母顺序排列.NET

对于Mono,它被忽略,因此order可以作为serializable类中提到的数据成员。 Mono的错误在这里描述:

https://bugzilla.xamarin.com/show_bug.cgi?id=10545

现在,问题是,我们有一个大型项目在Mono上工作。有大量的配置(XML-Config)文件。以及大量的Serializable对象。

为了在.Net中工作,同时仍然要兼容Mono和.Net,我有以下选项:

  1. 为每个可序列化对象显式添加“Order”属性。因此,.Net将重复相同的编号
  2. 切换到XmlSerializer。对于这个,我必须改变两者之间不同的属性。例如,XML one包括所有属性,除非它被告知相反(忽略属性)
  3. #1和#2都承担了很多工作。是否有方法或Serializer实现,它将重用为DataContractSerializer完成的现有数据类?

0 个答案:

没有答案