C# 从一个操作返回JSON原样(PascalCase)
在asp.net core 3中,返回的json将自动转换为camelCase,我知道如何在全局范围内关闭它,但如何在单个操作中关闭它? 我知道应该是这样的C# 从一个操作返回JSON原样(PascalCase),c#,asp.net-core,asp.net-core-3.0,C#,Asp.net Core,Asp.net Core 3.0,在asp.net core 3中,返回的json将自动转换为camelCase,我知道如何在全局范围内关闭它,但如何在单个操作中关闭它? 我知道应该是这样的 return Json(myObj, cfgHere); 但是在任何地方都找不到该示例该方法是控制器的一部分,但不是控制器库的一部分。如果您正在使用ControllerBase,这是不使用视图的控制器的典型情况,您可以新建一个JsonResult,并返回: return new JsonResult(myObj, cfgHere);
return Json(myObj, cfgHere);
但是在任何地方都找不到该示例该方法是控制器
的一部分,但不是控制器库
的一部分。如果您正在使用ControllerBase
,这是不使用视图的控制器的典型情况,您可以新建一个JsonResult
,并返回:
return new JsonResult(myObj, cfgHere);
这就是Controller.Json
方法的全部功能,如图所示:
serializerSettings
可以是或(如果您使用的是Json.NET)。下面的示例假设您使用的是默认的基于System.Text.Json
的格式化程序:
return new JsonResult(myObj, new JsonSerializerOptions());
通过创建JsonSerializerOptions
的实例而不设置任何属性,将保留默认策略,即保留属性名称不变
如果您希望使用更具声明性的方法(支持内容协商),请参阅:
return new JsonResult(myObj, new JsonSerializerOptions());