【问题标题】:Lowercase property names from Json() in .Net core.Net 核心中 Json() 的小写属性名称
【发布时间】:2017-06-01 07:58:40
【问题描述】:

拥有类ClientViewModel:

public class Result
{      
  public long PKID
  {
      get;
      set;
  }

   public string Name
   { 
      get; 
      set; 
   }
}

并且有 post 方法来返回这个模型:

[HttpPost]
    public JsonResult Search(string orderBy, List<Order> order, Search search,
        int start, int length, string searchTerm, bool isAsc, bool hideVoidedAndDeclined, bool recent = false)
    {
        var take = length;
        var skip = start;
        var m = _clientsService.Search(searchTerm, orderBy, hideVoidedAndDeclined, isAsc, take, skip, recent);


        return Json(m);
    }

但是当尝试在 json 中返回对象时,它看起来像:

name:"Nick22"
pkid: 5

但我需要保存寄存器

Name:"Nick22"
PKID: 5

【问题讨论】:

    标签: c# .net json asp.net-core


    【解决方案1】:

    应该更改contractresolver。但是由于您的外壳并不总是相同,因此您最好使用

    services.AddJsonOptions(options => { options.SerializerSettings.ContractResolver = new DefaultContractResolver(); });

    【讨论】:

    • AddJsonOptions - 没看到这个方法
    • 已解决问题。只需要写services.AddMvc().AddJsonOptions(options =&gt; { options.SerializerSettings.ContractResolver = new DefaultContractResolver(); }); ;
    猜你喜欢
    • 1970-01-01
    • 2016-08-21
    • 1970-01-01
    • 2018-06-26
    • 1970-01-01
    • 1970-01-01
    • 2021-08-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多