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

二、代码呈现

    public class HomeController : Controller
{
/// <summary>
/// 请求接口返回数据结构
/// </summary>
/// <typeparam name="T"></typeparam>
public class ReqResult<T>
{
/// <summary>
/// 提示消息
/// </summary>
public string message { get; set; }
/// <summary>
/// 状态码
/// </summary>
public string code { get; set; }
/// <summary>
/// 请求结果
/// </summary>
public T result { get; set; } /// <summary>
/// 返回时间
/// </summary>
public string date { get; set; }
}
// GET: Home
public JsonResult Index()
{
var res = new ReqResult<object>();
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\"}]";
res.code = "1";
res.message = "请求成功";
res.result = JsonConvert.DeserializeObject(date);
return Json(res, JsonRequestBehavior.AllowGet);
}
}

 

三、解决方案

重点

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. Python获取exe文件版本

    import time, datetime, re, subprocess, sys, os, win32net, win32api, win32con, win32netcon, win32secu ...

  2. ubuntu安装pandas

    1 安装依赖包 setuptools Numpy: 1.7.1 or higher python-dateutil: 1.5 or higher pytz: Needed for time zone ...

  3. 洛谷 P1407 稳定婚姻

    问题描述 我国的离婚率连续7年上升,今年的头两季,平均每天有近5000对夫妇离婚,大城市的离婚率上升最快,有研究婚姻问题的专家认为,是与简化离婚手续有关.25岁的姗姗和男友谈恋爱半年就结婚,结婚不到两 ...

  4. python之requests模块中的params和data的区别

    params的时候之间接把参数加到url后面,只在get请求时使用: import requests url='https://api.ireaderm.net/account/charge/info ...

  5. 编辑器直接word直接上传word里的图片

    tinymce是很优秀的一款富文本编辑器,可以去官网下载.https://www.tiny.cloud 这里分享的是它官网的一个收费插件powerpaste的旧版本源码,但也不影响功能使用. http ...

  6. codeforces 617 E. XOR and Favorite Number(莫队算法)

    题目链接:http://codeforces.com/problemset/problem/617/E 题目: 给你a1 a2 a3 ··· an 个数,m次询问:在[L, R] 里面又多少中 [l, ...

  7. vue 如何通过监听路由变化给父级路由菜单添加active样式

    1.项目需求:在项目开发中,多级菜单的情况下,勾选子菜单时,需要在父级菜单添加active样式. 2.遇到的问题:一级路由菜单的话,点击当前路由会自动在路由标签上添加router-link-exact ...

  8. VS2017中英文切换

    离线安装完成, --fix 检查下是否完整 安装时没有勾选的项, 可以下次再补安装 安装时出现缺少*.vsix 如:microsoft.visualstudio.webtoolsextensions. ...

  9. css content属性

    content 属性与 :before 及 :after 伪元素配合使用,来插入生成内容. 用于定义元素之前或之后放置的生成内容.默认地,这往往是行内内容,不过该内容创建的框类型可以用属性 displ ...

  10. android7.0后对于file://的限制

    错误信息: 04-18 14:56:58.283  4440  4440 W System.err: android.os.FileUriExposedException: file:///stora ...