Bunun için bir yanıt bulacağımı göremediğim nispeten basit bir soru olmalı.WCF JSON Hizmetlerinde Tür İpucunu Devre Dışı Bırakma
WCF nesnelerin kendi seri gerçekleştirir, otomatik Tür Dayatma uygular. Json hizmetleri için, bu, __type
adı verilen her karmaşık nesne için ek bir alana neden olur. Normalde bu bir sorun değildir
{
"First" : "Hello",
"Last" : "World!",
"__type" : "SomeObject#MyNamespace.SomeObject"
}
:
[DataContract]
public class SomeObject
{
[DataMember]
public string First { get; set; }
[DataMember]
public string Last { get; set; }
}
gibi bir şey serialize misiniz: Bir nesne olarak tanımlanır. Ne yazık ki, sınıfları oldukça büyük ve karmaşık yapılara yerleştirmeye başladığınızda, bu, müşteriye geri giden JSON cevabının büyüklüğünde bir ton yüke neden olur.
Elbette bu davranışı devre dışı bırakmanın bir yolu olmalı ama ben bir tane bulamadım (ne Rick Strahl back in 2007 vardı ... ama 2010 ve umarım birisi bunu anladı). DataContractJsonSerializer
kullanma
gelen bu başarısız oldu. Bu bir 4.0 şey mi? –
Sadece 4 üzerinde denedim, ancak bu belge http://msdn.microsoft.com/en-us/library/system.servicemodel.description.webhttpbehavior.defaultoutgoingresponseformat(v=vs.90) gibi görünüyor. .aspx http://msdn.microsoft.com/en-us/library/bb675191(v=vs.90).aspx – JeremyWeir
Çalıştığım için teşekkürler, – bladefist