.NET WebAPÄ° k_BackingField Pislik SerileÅŸtirme
Åžu: ben seri hale getirmek
[Serializable]
public class Error
{
public string Status { get; set; }
public string Message { get; set; }
public string ErrorReferenceCode { get; set; }
public List<FriendlyError> Errors { get; set; }
}
Bu iğrenç pisliği alıyorum:
<ErrorRootOfstring xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Printmee.Api">
<_x003C_Errors_x003E_k__BackingField>
An exception has occurred. Please contact printmee support
</_x003C_Errors_x003E_k__BackingField>
<_x003C_LookupCode_x003E_k__BackingField>988232ec-6bc9-48f3-8116-7ff7c71302dd</_x003C_LookupCode_x003E_k__BackingField>
</ErrorRootOfstring>
Ne veriyor? Nasıl bu kadar güzel yapabilir miyim? JSON yanıtları da k_BackingField içerir
CEVAP
Varsayılan olarak ne [Serializable]
ne [DataContract]
Web API ile çalışmak için kullanmaya gerek yok.
Sadece olduğu gibi modeliniz bırakın, ve Web API için tüm ortak özelliklerini seri hale getirmek.
Sadece olmasını istiyorsanız daha fazla denetim hakkında ne dahil, daha sonra süslemek sınıf [DataContract]
ve özellikler için dahil [DataMember]
(çünkü hem DC ve JSON.NET respsect bu öznitelikleri).
EÄŸer bir sebepten, gerek [Serializable]
sınıf (yani seri hale getirilirken bir hafıza stream nedense, derin kopyalarını vs.), sonra da sana sahip olduğu için kullanımı her iki öznitelikleri birlikte önlemek desteğini alan adları:
[Serializable]
[DataContract]
public class Error
{
[DataMember]
public string Status { get; set; }
[DataMember]
public string Message { get; set; }
[DataMember]
public string ErrorReferenceCode { get; set; }
[DataMember]
public List<FriendlyError> Errors { get; set; }
}
Nesne serileÅŸtirme nedir?...
Nasıl bir Dosya SONRASI ASP.Net MVC 4 ...
Nasıl TÜM özel durumları genel# MVC4 C...
ASP.NET MVC4 WebAPİ: isteğe bağlı para...
Google JSON serileÅŸtirme Motoru modell...