在 MVC 中强制使用 Json() ASP.NET 小写属性名称
/// <summary> /// 自定义JsonResult,使 /// </summary> public class JsonNetResult : ActionResult { /// <summary> /// /// </summary> public Encoding ContentEncoding { get; set; } /// <summary> /// /// </summary> public string ContentType { get; set; } /// <summary> /// /// </summary> public object Data { get; set; } /// <summary> /// /// </summary> public JsonSerializerSettings SerializerSettings { get; set; } /// <summary> /// /// </summary> public Formatting Formatting { get; set; } /// <summary> /// /// </summary> /// <param name="data"></param> /// <param name="formatting"></param> public JsonNetResult(object data, Formatting formatting) : this(data) { Formatting = formatting; SerializerSettings = new JsonSerializerSettings() { ContractResolver = new CamelCasePropertyNamesContractResolver() }; } /// <summary> /// /// </summary> /// <param name="data"></param> public JsonNetResult(object data) : this() { Data = data; } /// <summary> /// /// </summary> public JsonNetResult() { Formatting = Formatting.None; SerializerSettings = new JsonSerializerSettings() { ContractResolver = new CamelCasePropertyNamesContractResolver() }; } /// <summary> /// /// </summary> /// <param name="context"></param> public override void ExecuteResult(ControllerContext context) { if (context == null) throw new ArgumentNullException("context"); var response = context.HttpContext.Response; response.ContentType = !string.IsNullOrEmpty(ContentType) ? ContentType : "application/json"; if (ContentEncoding != null) response.ContentEncoding = ContentEncoding; if (Data == null) return; var writer = new JsonTextWriter(response.Output) { Formatting = Formatting }; var serializer = JsonSerializer.Create(SerializerSettings); serializer.Serialize(writer, Data); writer.Flush(); } }
[已解决]在 | 中强制使用 Json() 的小写属性名称9to5答案 (9to5answer.com)
浙公网安备 33010602011771号