在asp.net core中使用ajax请求动态绑定数据时遇到该问题

后台返回数据字段首字母为定义的大写,返回的数据没有问题 属性缺变成了小写

asp.net json传递 asp.net core 返回json_json 数据首字母大小写问题

1.添加属性注解

引用:using Newtonsoft.Json;      

  [Newtonsoft.Json.JsonProperty("BMI男总数")]
        public int BMI男总数 { get; set; }=0;

2.在Startup类的ConfigureServices()方法中进行配置,DefaultContractResolver() 原样输出,返回的 json 与后台定义一致

public void ConfigureServices(IServiceCollection services)
 {
     services.AddMvc().AddJsonOptions(opt =>
    {
        opt.SerializerSettings.ContractResolver = new Newtonsoft.Json.Serialization.DefaultContractResolver();//json字符串大小写原样输出
     });
 }

3. 在abp vnext框架中以上两种方法都不适用   可以试下下面的方法,缺点是所有返回的实体中无论首字母大小写都会改成首字母大写

在Startup类的ConfigureServices()添加以下代码

services.AddMvc().AddJsonOptions(options =>
            {//解决返回实体属性英文小写问题
                options.JsonSerializerOptions.Encoder = JavaScriptEncoder.Create(UnicodeRanges.All);
                options.JsonSerializerOptions.PropertyNamingPolicy = null;
            });

其他注解

asp.net json传递 asp.net core 返回json_首字母_02