MVC日期格式化,后台使用Newtonsoft.Json序列化日期,前端使用”f”格式化日期
生活随笔
收集整理的這篇文章主要介紹了
MVC日期格式化,后台使用Newtonsoft.Json序列化日期,前端使用”f”格式化日期
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
MVC控制器中,經常使用Newtonsoft.Json把對象序列化成json字符串傳遞到前端視圖。當對象中有DateTime類型的屬性時,前后臺如何處理才能把DateTime類型轉換成想要的格式呢?
?
有這樣的一個類具有DateTime類型屬性:
using System; ? namespace MvcApplication1.Models { public class Sample { public int Id { get; set; } public string Name { get; set; } public DateTime Date { get; set; } } }?
控制器中使用Newtonsoft.Json把對象實例序列化成json字符串:
using System.Web.Mvc; using MvcApplication1.Models; using Newtonsoft.Json; using Newtonsoft.Json.Converters; ? namespace MvcApplication1.Controllers { public class HomeController : Controller { public ActionResult Index() { var sample = new Sample() { Id = 1, Name = "good", Date = DateTime.Now }; ? JsonSerializerSettings microsoftDateFormatSettings = new JsonSerializerSettings { DateFormatHandling = DateFormatHandling.MicrosoftDateFormat, DateTimeZoneHandling = DateTimeZoneHandling.Utc }; ViewData["json"] = Newtonsoft.Json.JsonConvert.SerializeObject(sample, microsoftDateFormatSettings); return View(); } ? } } ?
前臺視圖使用一個叫"f"的js文件,把json中的日期格式轉換成期望的樣子:
@{ ViewBag.Title = "Index"; Layout = "~/Views/Shared/_Layout.cshtml"; } <p> <span id="jsonDate">@ViewData["json"]</span> </p> ? <p> 轉換后的時間格式為:<span id="fDate"></span> </p> ? @section scripts { <script src="~/Scripts/date.f-0.5.0.js"></script> <script type="text/javascript"> $(function () { var obj = $.parseJSON($('#jsonDate').text()); //$('#fDate').text(new Date(parseInt(obj.Date.substr(6))).f("yyyy-MM-dd HH:mm:ss")); $('#fDate').text(new Date(parseInt(obj.Date.substr(6))).f("yyyy-MM-dd")); }); </script> } ?
結果:
?
參考資料:
關于"f" 的js文件:http://fisforformat.sourceforge.net/
關于Newtonsoft.Json:http://james.newtonking.com/json/help/index.html?topic=html/DatesInJSON.htm
總結
以上是生活随笔為你收集整理的MVC日期格式化,后台使用Newtonsoft.Json序列化日期,前端使用”f”格式化日期的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ssd网络结构_封藏的SSD(Singl
- 下一篇: 前端如何调用后端接口_后端开发:如何写出