2
使用以下代碼,XmlSerializer
拋出一個異常,因爲Foo
包含兩個屬性,它們與枚舉EnumSameName
的名稱相同。XmlSerializer在枚舉上拋出異常
按預期工作框架.NET 4.0
public class Bar1
{
public enum EnumSameName
{
a
}
public EnumSameName MyBar1Enum { get; set; }
}
public class Bar2
{
public enum EnumSameName
{
b
}
public EnumSameName MyBar2Enum { get; set; }
}
public class Foo
{
public Foo()
{
MyEnum1 = new Bar1();
MyEnum2 = new Bar2();
}
public Bar1 MyEnum1 { get; set; }
public Bar2 MyEnum2 { get; set; }
}
現在嘗試序列Foo
var parameter = new Foo();
var serializer = new XmlSerializer(parameter.GetType());
// ERROR System.InvalidOperationException: [...]
重命名EnumSameName
一切之一後。
這個錯誤來自哪裏?