我有一个enum,它描述了可供用户选择作为设置的一部分的选项。这被序列化为XML。其中一个名称并不理想,我想重命名,但仍支持旧设置文件的反序列化。
例如:
public enum Options
{
Odd,
NonOdd // rename to 'Even'
}
我知道我可以重命名它,但是指定以前的序列化名称:
public enum Options
{
Odd,
[XmlEnum(Name = "NonOdd")]
Even
}
虽然这有效,但它继续在XML文件中使用NonOdd
,我不想这样做。
有没有办法支持对当前和已弃用的枚举名称进行反序列化,但序列化为当前名称?
答案 0 :(得分:2)
这就是我要做的事情:
一旦你有了这个结构,就可以根据需要多次重命名枚举元素。