我正在使用DataContract Serialization,我不想更改类型Datamember属性
[DataContract]
public class Page
{
[DataMember]
public int Height{get;set;}
}
现在我不想将Height属性的类型从'int'更改为'double'。但是,我不确定如果我打开一个旧文件,则使用该文件中的值并将其正确分配给'Height',即int类型的值被转换为double。
我想这样做而不必保留任何冗余属性。有什么办法可以实现吗?
以下更改始终是中断
...
- 更改数据成员的数据协定。例如,将数据成员的类型从整数更改为字符串,或者从具有名为“Customer”的数据协定的类型更改为具有名为“Person”的数据协定的类型。
所以,你不能这样做,这打破了合同。
你需要以某种方式切割和运行。您可能需要制作管道来处理旧合同。