码迷,mamicode.com
首页 > Web开发 > 详细

解析ActionResult子类JsonResult

时间:2018-01-24 22:11:29      阅读:212      评论:0      收藏:0      [点我收藏+]

标签:数据库   2.0   soft   字符串   使用   new   ret   datetime   str   

 

前言

       MVC我是11开始使用的,当时还是在上地软件园一小型互联网公司,当时是MVC2.0+Linq to sql。后来接着学习MVC3,MVC3的出现确实让我有种眼前一亮的感觉,期间我不断的写各种demo,一直到现在再看MVC时就有点生疏了,有一年多没用了,好多知识很细节都遗忘了。

 

看到同事的代码

 

       前几天看到同事的代码, 其中看到了他对Json的用法,大致思路就是从数据库返回结果集,然后用自定义JsonHelper把结果集处理成Json字符串返回给客户端使用。也就是说把json字符串放入 return Json(strJson);

      

       看完就觉的不对劲,MVC Json是这样用? 那么大家都知道JsonResult内部其实是使用JavaScriptSerializer 来序列化结果集的, 也就是说你直接把结果集扔进去,返回给客户端就已经是Json对象了,不需要你再手动处理,实在是多此一举。

 

正确使用

技术分享图片
public JsonResult GetAllStudents()
        {
            var students = new List<Student>
            {
                new Student(){ID  =1,Name = "张三",Age =20, Birthday = DateTime.Now},
                new Student(){ID  =2,Name = "李四",Age =20, Birthday = DateTime.Now}
            };

            var result = new JsonResult();
            result.Data = students;
            result.JsonRequestBehavior = JsonRequestBehavior.AllowGet;
            return result;

        }
技术分享图片


JsonResult对日期类型的序列化

技术分享图片

    想到这一步时以前也遇到过没去探究, 昨儿一个同事问我这个问题,以前的做法都是在js中直接处理,这样就是麻烦些,后续用到日期的地方都需要在js中处理, 那么现在的解决方法就是自己重写JsonResult, 然后使用Newtonsoft.Json来自己定义日期格式。

 

解析ActionResult子类JsonResult

标签:数据库   2.0   soft   字符串   使用   new   ret   datetime   str   

原文地址:https://www.cnblogs.com/cjm123/p/8343332.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!