一、Ajax或者页面请求获取数据,不通过WebApi的时候,使用JsonResult作为返回Json数据格式的类型

二、代码呈现

  1. public class HomeController : Controller
  2. {
  3. /// <summary>
  4. /// 请求接口返回数据结构
  5. /// </summary>
  6. /// <typeparam name="T"></typeparam>
  7. public class ReqResult<T>
  8. {
  9. /// <summary>
  10. /// 提示消息
  11. /// </summary>
  12. public string message { get; set; }
  13. /// <summary>
  14. /// 状态码
  15. /// </summary>
  16. public string code { get; set; }
  17. /// <summary>
  18. /// 请求结果
  19. /// </summary>
  20. public T result { get; set; }
  21.  
  22. /// <summary>
  23. /// 返回时间
  24. /// </summary>
  25. public string date { get; set; }
  26. }
  27. // GET: Home
  28. public JsonResult Index()
  29. {
  30. var res = new ReqResult<object>();
  31. string date = "[{\"districtFullName\":\"黄浦区\",\"address\":\"打浦路38弄1-6号\",\"residentialareaName\":\"海华花园\",\"similarWord\":\"打浦路38弄1-6号\",\"communityId\":\"c2e08f29-292c-11e5-ac2c-288023a0e898\",\"version\":\"2.0\"},{\"districtFullName\":\"闵行区\",\"address\":\"莘北路50弄\",\"residentialareaName\":\"森都公寓\",\"similarWord\":\"莘北路50弄\",\"communityId\":\"c2d7382d-292c-11e5-ac2c-288023a0e898\",\"version\":\"2.0\"},{\"districtFullName\":\"浦东新区\",\"address\":\"东南路48弄1-10号\",\"residentialareaName\":\"东八公寓东区\",\"similarWord\":\"东南路74号\",\"communityId\":\"c2d73b7b-292c-11e5-ac2c-288023a0e898\",\"version\":\"2.0\"},{\"districtFullName\":\"浦东新区\",\"address\":\"周东路368弄1-72号\",\"residentialareaName\":\"莲花二村\",\"similarWord\":\"周东路368弄51号\",\"communityId\":\"c2d742dd-292c-11e5-ac2c-288023a0e898\",\"version\":\"2.0\"},{\"districtFullName\":\"浦东新区\",\"address\":\"周市路2045弄\",\"residentialareaName\":\"东南新村(周浦)\",\"similarWord\":\"东南新村5号\",\"communityId\":\"c2d74586-292c-11e5-ac2c-288023a0e898\",\"version\":\"2.0\"},{\"districtFullName\":\"徐汇区\",\"address\":\"华泾路999弄1-373号\",\"residentialareaName\":\"上海漓江山水花园\",\"similarWord\":\"漓江花园一期\",\"communityId\":\"c2d74a64-292c-11e5-ac2c-288023a0e898\",\"version\":\"2.0\"},{\"districtFullName\":\"浦东新区\",\"address\":\"东八灶115弄1-31号\",\"residentialareaName\":\"新育公寓\",\"similarWord\":\"新育公寓二期\",\"communityId\":\"c2d74c0e-292c-11e5-ac2c-288023a0e898\",\"version\":\"2.0\"},{\"districtFullName\":\"闵行区\",\"address\":\"庙泾路52弄1号\",\"residentialareaName\":\"水清三村\",\"similarWord\":\"水清三村4号\",\"communityId\":\"c2d74cde-292c-11e5-ac2c-288023a0e898\",\"version\":\"2.0\"},{\"districtFullName\":\"徐汇区\",\"address\":\"华济路2弄1-75号\",\"residentialareaName\":\"沙家浜小区\",\"similarWord\":\"华济路2弄37号\",\"communityId\":\"c2d74da8-292c-11e5-ac2c-288023a0e898\",\"version\":\"2.0\"},{\"districtFullName\":\"松江区\",\"address\":\"横港路49弄\",\"residentialareaName\":\"祥和公寓(松江)\",\"similarWord\":\"横港路49弄\",\"communityId\":\"c2d759c5-292c-11e5-ac2c-288023a0e898\",\"version\":\"2.0\"}]";
  32. res.code = "1";
  33. res.message = "请求成功";
  34. res.result = JsonConvert.DeserializeObject(date);
  35. return Json(res, JsonRequestBehavior.AllowGet);
  36. }
  37. }

 

三、解决方案

重点

List<Res> resList = JsonConvert.DeserializeObject<List<Res>>(result);

原由:你不能用了外部的ReqResult的model,里面的泛型T又用字符串,要么全是字符串,要么全是model。

 

三、MVC_JsonResult类型的更多相关文章

  1. Javascript权威指南——第二章词法结构,第三章类型、值和变量,第四章表达式和运算符,第五章语句

    第二章 词法结构 一.HTML并不区分大小写(尽管XHTML区分大小写),而javascript区分大小写:在HTML中,这些标签和属性名可以使用大写也可以使用小写,而在javascript中必须小写 ...

  2. 链路层三种类型的MAC地址

    若需要转载,请注明出处. 我们知道,链路层都是以MAC地址来进行通信双方的地址标识的,如下图:在应用中根据接收方的多寡来进行划分,可分为以下三种: 单播(Unicast) 多播(Multicast) ...

  3. 《JS权威指南学习总结--第三章类型、值和变量》

    第三章 类型.值和变量 内容要点 一.数据类型 1.在编程语言中,能够表示并操作的值的类型称做数据类型 2.JS的数据类型分为两类: 原始类型:数字.字符串和布尔值 对象类型 3.JS中有两个特殊的原 ...

  4. matlab for循环的三种类型

    学习了一半了,发现一个好网站,就是我想写这篇博客用的,网络真是个好东西!纪念下国庆啦 网址:http://www.yiibai.com/matlab/matlab_for_loop.html ---- ...

  5. mybatis入门系列三之类型转换器

    mybatis入门系列三之类型转换器 类型转换器介绍 mybatis作为一个ORM框架,要求java中的对象与数据库中的表记录应该对应 因此java类名-数据库表名,java类属性名-数据库表字段名, ...

  6. C# enum、int、string三种类型互相转换

    enum.int.string三种类型之间的互转 #代码: public enum Sex { Man=, Woman= } public static void enumConvert() { in ...

  7. { MySQL基础数据类型}一 介绍 二 数值类型 三 日期类型 四 字符串类型 五 枚举类型与集合类型

    MySQL基础数据类型 阅读目录 一 介绍 二 数值类型 三 日期类型 四 字符串类型 五 枚举类型与集合类型 一 介绍 存储引擎决定了表的类型,而表内存放的数据也要有不同的类型,每种数据类型都有自己 ...

  8. 缓慢变化维 (Slowly Changing Dimension) 常见的三种类型及原型设计(转)

    开篇介绍 在从 OLTP 业务数据库向 DW 数据仓库抽取数据的过程中,特别是第一次导入之后的每一次增量抽取往往会遇到这样的问题:业务数据库中的一些数据发生了更改,到底要不要将这些变化也反映到数据仓库 ...

  9. ASP.NET 设计模式分为三种类型

    设计模式分为三种类型,共23类.  一.创建型模式:单例模式.抽象工厂模式.建造者模式.工厂模式.原型模式.      二.结构型模式:适配器模式.桥接模式.装饰模式.组合模式.外观模式.享元模式.代 ...

  10. 云计算服务的三种类型(SaaS、PaaS、IaaS)

    云计算可以帮助企业降低IT方面的成本和复杂性,并获得他们蓬勃发展所需的灵活性与敏捷性.但是,规划出通往云的明确路径并非易事.毕竟用户需要看透与云相关的市场大肆宣传,然后理解并分析不同种类的云计算模式的 ...

随机推荐

  1. TreeMap和Comparable接口

    备注:HashMap线程不安全,效率高,允许key.value为空 HasTable线程安全.效率低.不允许key或value为空 TreeMap在存储时会自动调用comparable方法进行排序,当 ...

  2. Python---基础---爱因斯坦阶梯问题

    写一个程序,打印出0-100所有奇数 ls = range(0, 101)for i in ls: if i % 2 == 1: print(i)--------------------------- ...

  3. OC中SEL,类别,继承,协议的使用

    1.SEL SEL是selector的缩写,selector在OC中作用是定义一个方法变量,通过该方法变量来调用方法.我们在后面的UI中会经常用selector来调用事件方法.下面我将举两个例子来说明 ...

  4. linux运维、架构之路-ansible批量管理

    一.ansible软件 1.介绍 ①ansible是一个基于Python开发的自动化运维工具 ②其功能实现基于SSH远程连接服务 ③ansible可以实现批量系统配置.批量软件部署.批量文件拷贝.批量 ...

  5. U盘安装win8(win7)+centos7双系统

    centos7除了之后,就像尝鲜看看,但是发现安装之后会失去win8启动项.导致重装系统,经过反复折腾,终于搞定了,发出来共享下.默认你的 window系统已经安装好,不介绍window安装过程.本文 ...

  6. 20180715-Java StringBuffer和StringBuilder类

    public class Test{ public static void main(String args[]){ StringBuffer sBuffer = new StringBuffer(& ...

  7. 2019 上海网络赛 F Rhyme scheme (字典树DP)

    题目:https://nanti.jisuanke.com/t/41414 题意:求长度为n的第k个bell number  ,  就是第i位的选取范围在 1-(i-1)位的最大值 +1,第一位固定为 ...

  8. 使用CFStringTransform将汉字转换为拼音

    之前做通讯录相关的一些App时,有一个比较常用的算法是将汉字转换成拼音.当时采用的做法是:将各个拼音段的首个汉字(按Unicode排序)做成两个数组,一个数组存拼音,另一个数组存拼音对应首个汉字的Un ...

  9. (转)GIS理论知识(三)之ArcGIS平台、SuperMap超图平台和开源平台

    3.1.ArcGIS平台 ArcGIS为美国ESRI公司研发的产品,为用户提供一个可伸缩的,全面的GIS平台.ArcObjects包含了许多的可编程组件,从细粒度的对象(例如单个的几何对象)到粗粒度的 ...

  10. Spring中两种引入配置文件方式

    用过Spring的人都知道,我们一般把数据库的配置.日志的配置或者其他的通用配置放在单独的配置文件中,在和Spring整合时,一般通过以下两种方法引入: <context:property-pl ...