我需要配置Web API的JSON输出。
当我直接在属性上设置JsonProperty-Attribute时,它可以工作。 但是完全忽略了JsonFormatter设置的变化(在Register方法中)。
public static void Register(HttpConfiguration config)
{
// Web API configuration and services
config.Formatters.JsonFormatter.SerializerSettings.NullValueHandling = NullValueHandling.Ignore;
config.Formatters.JsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();
// ...
}
我做错了什么?
答案 0 :(得分:0)
我的错。
在WebApi中,我与Azure DocumentDB进行了交谈。
所以我当然 - 配置DocumentDB序列化程序来格式化Json文档。
static DocumentDbRepository()
{
JsonConvert.DefaultSettings = () =>
{
return new JsonSerializerSettings
{
NullValueHandling = NullValueHandling.Ignore,
TypeNameHandling = TypeNameHandling.Objects,
//serializing works, but Linq to DocumentDB provider seems to ignore the ContractResolver. -> [JsonProperty]
//ContractResolver = new CamelCasePropertyNamesContractResolver(),
};
};
}