【发布时间】:2013-03-15 01:58:29
【问题描述】:
这是一个后续问题:
Serialization breaks in .NET 4.5
我在遗留代码中有一个属性,这让我在 .NET 4.5 上的序列化过程中感到悲痛。
这是属性:
[EditorBrowsable(EditorBrowsableState.Never), Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
private new object Value
{
get
{
return base.Value;
}
set
{
base.Value = value;
}
}
这可能是为了隐藏基类的“Value”属性而引入的。 到目前为止唯一有效的解决方案是 让序列化程序知道我想在 .NET4 中序列化。 但这对我来说是个问题。 (只有在traget计算机上安装了.NET 4.5才应该设置此配置,否则会引发异常)。
我想我可以一起删除该属性,但由于我正在处理一个庞大而复杂的遗留系统,我不确定可能会产生什么副作用。
所以我的问题是双重的:
为什么继承的属性会破坏 .NET 4.5 序列化?
如果我删除了继承的属性,我应该期待什么讨厌的副作用?
【问题讨论】:
标签: c# .net serialization