我需要用小写显示json的属性第一个单词exmpple
{ name: ''}
但我得到了
{ Name: ''} <-- Error: uppercase
我正在使用:.net核心3.1Microsoft.AspNetCore.Mvc.NewtonsoftJson 3.1.23
我写这个
services.AddControllers()
.AddNewtonsoftJson(opt =>
{
opt.SerializerSettings.ContractResolver = new Newtonsoft.Json.Serialization.CamelCasePropertyNamesContractResolver()
{
};
})
;
不工作
我一直在使用这种语法
services.AddControllers()
.AddNewtonsoftJson(options =>
options.SerializerSettings.ContractResolver =
new CamelCasePropertyNamesContractResolver());
您可以在Startup.cs file
中添加以下代码。
public void ConfigureServices(IServiceCollection services)
{
//...
services.AddControllers().AddNewtonsoftJson();
JsonConvert.DefaultSettings = () => new JsonSerializerSettings
{
ContractResolver = new CamelCasePropertyNamesContractResolver()
};
// ...
}
我发现问题是因为我使用Newtonsoft类创建了一个动态对象
Newtonsoft.Json.Linq.JObject obj = new Newtonsoft.Json.Linq.JObject();
obj.Add(new Newtonsoft.Json.Linq.JProperty("Emp",item.Key.E));
obj.Add(new Newtonsoft.Json.Linq.JProperty("Dep",item.Key.D));
obj.Add(new Newtonsoft.Json.Linq.JProperty("Pu",item.Key.P));
这个json对象没有转换为CamelCase和我的dtos类yes