AspNetCore 中的Json序列化处理已经默认使用_Newtonsoft.Json_库了...
比如像MVC中:
public I
不过使用过程中会发现一些问题,其实这算默认设置吧:
- Json序列化后的字段格式会变成小驼峰形式
- Json序列化时的日期时间格式化
- 没有处理循环引用的问题,比如EntityFramework的导航循环Json序列化时循环引用异常
- ...
可以通过Startup.cs修改全局默认的Json序列化设置:
1// Startup.cs 2 3// ... 4public void ConfigureServices(IServiceCollection services) 5{ 6 services.addMvc() 7 .AddJsonOptions(setupAction => 8 { 9 // 忽略循环引用,规避EntityFramework导航属性json序列化时的循环引用问题 10 setupAction.SerializerSettings.ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore; 11 12 // 使用默认json序列化,规避字段小驼峰命名法 13 //setupAction.SerializerSettings.ContractResolver = new DefaultContractResolver(); 14 15 // 设置json序列化的日期时间格式 16 //setupAction.SerializerSettings.DateFormatString = "yyyy-MM-dd"; 17 }); 18} 19//...
参考文档: