一、概述
1、前面文章介绍Controller的大小写问题时,目的只是介绍它的差异性,有同学回复了,这里把它作为一个点写一下吧。
二、默认定义的转换结果
1、写一个返回对象的方法。
2、运行查看结果。
public class OneController : Controller
{
public Model GetString(string id)
{
return new Model() { ID = id, Name = "aa" };
}
}
public class Model
{
public string ID { get; set; }
public string Name { get; set; }
}
运行结果

三、自定义转换方法 (以下是NetCore 2.0的写法)
1、添加Startup自定义转换代码。
2、重新运行查看结果。


四、自定义转换方法 (以下是NetCore 3.0的写法)
需要先引用 Microsoft.AspNetCore.Mvc.NewtonsoftJson 包
services.AddMvc().AddNewtonsoftJson(options =>
{
// 忽略循环引用
options.SerializerSettings.ReferenceLoopHandling = ReferenceLoopHandling.Ignore;
// 不使用驼峰
options.SerializerSettings.ContractResolver = new DefaultContractResolver();
// 设置时间格式
options.SerializerSettings.DateFormatString = "yyyy-MM-dd HH:mm:ss";
// 如字段为null值,该字段不会返回到前端
// options.SerializerSettings.NullValueHandling = NullValueHandling.Ignore;
});
//或
services.AddControllers().AddNewtonsoftJson(options =>
{
// 忽略循环引用
options.SerializerSettings.ReferenceLoopHandling = ReferenceLoopHandling.Ignore;
// 不使用驼峰
options.SerializerSettings.ContractResolver = new DefaultContractResolver();
// 设置时间格式
options.SerializerSettings.DateFormatString = "yyyy-MM-dd HH:mm:ss";
// 如字段为null值,该字段不会返回到前端
// options.SerializerSettings.NullValueHandling = NullValueHandling.Ignore;
});
转自:https://www.cnblogs.com/chenyinxin/p/9015712.html
