2
我有以下DataContract:注意:我沒有更改DataContract的權限。我只參考它。反序列化c#datacontract枚舉時出錯
[Serializable]
[DataContract]
public class Client
{
public Client();
[DataMember]
public string Name { get; set; }
[DataMember]
public List<Contact> Contacts { get; set; }
}
而在聯繫人:
[Serializable]
[DataContract]
public class Contact
{
public Contact();
[DataMember]
public string ContactName { get; set; }
[DataMember]
public ContactTypes ContactType { get; set; }
}
的ContactTypes是一個枚舉:
[Serializable]
[DataContract]
public enum ContactTypes
{
[EnumMember(Value="Phone")]
Phone = 1,
[EnumMember(Value="Mail")]
Mail = 2
}
我的問題是,當我反序列化我的XML。它顯示錯誤:無效的枚舉值「1」無法反序列化。
這裏是我的xml:
<Clients>
<Client>
<Name>Firstname</Name>
<Contacts>
<Contact>
<ContactName>ContactName</ContactName>
<ContactType>1</ContactType>
</Contact>
</Contacts>
</Client>
</Clients>
難道我錯過了什麼嗎?我一整天都在討論這個問題。謝謝您的幫助!
事實是,我可以編輯datacontract,但僅限於本地端。我想我會給這個鏡頭。 – Gerald