ASP.Net 5 vnext输入/输出json格式不工作
本文关键字:json 格式 工作 输出 Net vnext 输入 ASP | 更新日期: 2023-09-27 18:07:05
在我的asp.net 5 vnext (beta 6) web api项目中,我的输入/输出json格式化器设置似乎对对象的序列化没有任何影响。
有人看到这个吗?
public void ConfigureServices(IServiceCollection services)
{
// Add MVC services.
services.AddMvc();
// Configure.
services.ConfigureMvc(o =>
{
// Input Formatters.
var jif = new JsonInputFormatter()
{
SerializerSettings = new JsonSerializerSettings()
{
ContractResolver = new CamelCasePropertyNamesContractResolver(),
DefaultValueHandling = DefaultValueHandling.Ignore,
NullValueHandling = NullValueHandling.Ignore
}
};
o.InputFormatters.Clear();
o.InputFormatters.Add(jif);
// Output Formatters.
var jof = new JsonOutputFormatter()
{
SerializerSettings = new JsonSerializerSettings()
{
ContractResolver = new CamelCasePropertyNamesContractResolver(),
DefaultValueHandling = DefaultValueHandling.Ignore,
NullValueHandling = NullValueHandling.Ignore
}
};
o.OutputFormatters.Clear();
o.OutputFormatters.Add(jof);
});
}
通过这些设置,我仍然得到这个作为服务器响应:
{"结果":"错误","原因":空,"时间":1439068137652,"消息":零}
我用下面的代码解决了这个问题:
services.ConfigureMvcJson(o =>
{
o.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();
o.SerializerSettings.DefaultValueHandling = DefaultValueHandling.Ignore;
o.SerializerSettings.NullValueHandling = NullValueHandling.Ignore;
});
但是,使用它,我无法在输入和输出格式化器之间进行区分。