asp.net core 1.0 web api使用camelcase

Bri*_*irs 48 c# json json.net asp.net-core-mvc asp.net-core-1.0

RC2相同的代码返回json格式与camel case.在netcore 1.0发布之后,我启动了新项目,同样的代码以小写形式返回json.

尝试了多个解决方案,但没有一个正在使用 web-api-serialize-properties-starting-from-lowercase-letter

Bri*_*irs 105

services
    .AddMvc()
    .AddJsonOptions(options =>
    {
        options.SerializerSettings.ContractResolver
            = new Newtonsoft.Json.Serialization.DefaultContractResolver();
    });
Run Code Online (Sandbox Code Playgroud)

这使JSON对象的名称与.NET类属性相同.


Sia*_*ash 36

您可以通过以下方式配置JSON行为:

public void ConfigureServices(IServiceCollection services)  
  {
      services.AddMvc()
                  .AddJsonOptions(options =>
                  {
                      options.SerializerSettings.ContractResolver =
                          new CamelCasePropertyNamesContractResolver();
                  });
  }
Run Code Online (Sandbox Code Playgroud)

  • 这实际上现在是默认行为(不幸的是),他想要默认,因为没有更改属性名称,大小写 (7认同)
  • @Omu这些实际上并不相同(无论如何都在.net core 2.0中).*DefaultContractResolver*将接受CamelCase并返回TitleCase,*CamelCasePropertyNamesContractResolver*接受并返回CamelCase. (2认同)