将jSON序列化从camelCase更改为PascalCase [重复]

问题描述 投票:0回答:1

这个问题在这里已有答案:

从Core 2.1迁移我的项目后。到2.2。我的Kendo小部件出现问题。模型中的字段使用PascalCase指定,并且从JSON中的服务器返回的字段名称使用camelCase。

我在Startup中添加了DefaultContractResolver,但JSON仍然在camelCase中被序列化。这里有解决方法吗?


services
  .AddMvc(options => options.EnableEndpointRouting = false).SetCompatibilityVersion(CompatibilityVersion.Version_2_2)
  .AddJsonOptions(options => options.SerializerSettings.ContractResolver = new DefaultContractResolver());

kendo-asp.net-mvc aspnetboilerplate
1个回答
0
投票

我们遇到类似的问题,Syncfusion期待PascalCase。

到目前为止,我们发现的唯一解决方案是创建自己的解决方

PascalCasePropertyNamesContractResolver : DefaultContractResolver

其中我们只是覆盖ResolvePropertyName以按原样返回密钥。

不幸的是,我们必须在每个Json-Return中引用此ContractResolver,如下所示:

return Json(new { result = result.Items, count = result.Count }, new JsonSerializerSettings { ContractResolver = new PascalCasePropertyNamesContractResolver () });

如果有更好的解决方案在这里:欢迎并提前感谢。

© www.soinside.com 2019 - 2024. All rights reserved.