如何在Web API中为所有数据成员全局设置EmitDefaultValue为false?

我正在使用Web API,并且我设置了以下属性,以便在序列化成员时不显示默认值:

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

我总共有大约20个DataContracts和100个属性作为DataMembers,那么如何才能将EmitDefaultValue全局设置为false?

我希望我不必使用Reflection编写自己的逻辑!

在App_Start文件夹中,将其添加到WebApiConfig

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