ASP.NET MVC中JSON.NET代替JavaScriptSerializer
使用JSON.NET 代替(The benefit of using JsonNetResult over the built in JsonResult is you get a better serializer (IMO [:)]) and all the other benefits of Json.NET like nicely formatted JSON text.)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Web.Mvc; using Newtonsoft.Json; using System.Web; //http://stackoverflow.com/questions/15816319/what-does-asp-net-mvc-4-0-used-for-json-serialization //http://stackoverflow.com/questions/7109967/using-json-net-as-default-json-serializer-in-asp-net-mvc-3-is-it-possible //http://stackoverflow.com/questions/15738691/newtonsoft-json //http://wingkaiwan.com/2012/12/28/replacing-mvc-javascriptserializer-with-json-net-jsonserializer/ /** * 版权所有 All Rights Reserved * * @author Irving_Zhou * @description ASP.NET MVC 使用Newtonsoft.Json * @date 2013年10月20日10:17:45 * @version 1.0.0 * @email zhouyongtao@outlook.com * @blog http://www.cnblogs.com/Irving/ * @refer http://james.newtonking.com/archive/2008/10/16/asp-net-mvc-and-json-net */ namespace NRainel.Ajax { 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; } public JsonNetResult() { SerializerSettings = new JsonSerializerSettings(); } /// <summary> /// 重写执行上下文 /// </summary> /// <param name="context"></param> public override void ExecuteResult(ControllerContext context) { if (context == null) throw new ArgumentNullException("context"); HttpResponseBase response = context.HttpContext.Response; response.ContentType = !string.IsNullOrEmpty(ContentType) ? ContentType : "application/json"; if (ContentEncoding != null) response.ContentEncoding = ContentEncoding; if (Data != null) { JsonTextWriter writer = new JsonTextWriter(response.Output) { Formatting = Formatting }; JsonSerializer serializer = JsonSerializer.Create(SerializerSettings); serializer.Serialize(writer, Data); writer.Flush(); } } } }
JS日期转换
// 为 jQuery 扩展一个转换日期的方法 jQuery.extend( { toDate: function (date) { var date = new Date(parseInt(date.substring(6))); return date; }, toDateString: function (jsDate) { return "\/Date(" + jsDate.getTime() + "+0000)\/"; } } );
Refer:http://james.newtonking.com/archive/2008/10/16/asp-net-mvc-and-json-net
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· [AI/GPT/综述] AI Agent的设计模式综述