2013-06-07 14 views
5

Ben Web API kullanıyorum ve üyeler serileştirildi varsayılan değeri görülmez, böylece aşağıda özelliğini belirledik:Web API'sındaki tüm Veri Üyeleri için EmitDefaultValue öğesi global olarak yanlış olarak nasıl ayarlanır?

[DataMember(EmitDefaultValue = false)] 
     public string EventName { get; set; } 

ben toplamda yaklaşık 20 DataContracts ve DataMembers öyleyse nasıl olarak 100 özelliklere sahip EmitDefaultValue öğesini herkes için yanlış olarak ayarlamak mümkün olabilir mi?

Umarım Reflection kullanarak kendi mantığımı yazmak zorunda değilim! senin App_Start klasöründe

cevap

0

Ben XmlFormatter kullanıyorum WebApiConfig

public static class WebApiConfig 
{ 
    public static void Register(HttpConfiguration config) 
    { 
     config.Formatters.JsonFormatter.SerializerSettings = 
      new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore }; 
+0

bu ekleyebilir ve SerializerSettings özelliği yoktur. teşekkürler –

+1

@TheLight XmlSerializer'da bunu bulmak için herhangi bir sevinç? – mizzle

+0

Sanırım 'DefaultValueHandling = DefaultValueHandling.Ignore' bu durumda daha uygun 'NullValueHandling = NullValueHandling.Ignore' Elbette bu yalnızca JSON çıktısı için geçerlidir. –

İlgili konular