Enum not serializing

Ahmed ilyas picture Ahmed ilyas · May 14, 2012 · Viewed 30.3k times · Source

I have a WCF service. it is bound to an MSMQ but that is not the issue here. I can serialize an object which has a base class and an interface implemented in the base class and the concrete class derives from the base class - this works fine.

however, when I have an enum in the base class and I set that value, then after it being deserialized/read from the MSMQ, that value is still set to the default value (i.e not the one set manually in code)

any ideas whats going on? I even marked the enum as a DataContract and also each of the Enum members with an EnumMember attribute.

how can I serialize enums?

Answer

animaonline picture animaonline · May 14, 2012

Try this.

[Serializable]
public enum EnumToSerialize
{
    [XmlEnum("1")]
    One = 1,
    [XmlEnum("2")]
    Two = 2
}