2012-11-20 35 views
8

.Net Web API teknolojisini kullanarak bir HTTP hizmeti oluşturuyorum, bazı DTO sınıfları oluşturdum ve yalnızca belirli bir veri kümesi gerektiğinde, yalnızca DTO'ları doldurmayı planlıyorum Aktarılan veri miktarını en aza indirmek için bu verilerle.JSON Serileştirme - boş tuşları kaldırma

JSON serileştiricisini boş olan veri üyelerini yok saymanın bir yolu var mı? Belirli üyeleri görmezden gelecek olan [JsonIgnore] ve [ScriptIgnore] özelliklerinin olduğunu anlıyorum, ancak sadece boş veya boşsa bunları göz ardı etmek istiyorum.

Ben WebApiConfig.cs için aşağıdaki Web API bu etkinleştirmek için eklenen [Düzenle]

altına LB için

Teşekkür:

var json = GlobalConfiguration.Configuration.Formatters.JsonFormatter; 
json.SerializerSettings.NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore; 

cevap

14

Json.Net bu

için bir ayar vardır
var str = JsonConvert.SerializeObject(obj, 
    new JsonSerializerSettings() { NullValueHandling = NullValueHandling.Ignore }); 
+0

Awesome; teşekkür ederim. Web API’da neler yaptığımı göstermek için sorumu düzenledim. – Dale