再开发MVC项目时,有时只需要从控制器中返回一个处理的结果,这时返回Json格式的数据非常的方便,在Controller中,提供了几种返回类型和方法,如:

Content()

返回文本类型的ContentResult:,比如“Hello,World!”;

File()

返回文件类型的内容FileResult,比如PDF

HttpNotFound()

返回包含404HTTP状态码的HttpNotFoundResult.

JavaScript()::返回JavaSciptResult

返回包含JavaScript内容的JavaScriptResult,比如:“function hello(){alert("Hello world!")}”

Json()

返回JSON格式数据的JsonResult,比如:“{"Message":"Hello world!"}”.我们这边就是要用该方法返回到视图一个json对象

PartialView()

返回包含部分视图内容的PartialViewResult,(例如,视图可不包含结局)。

Redirect()

返回一个包含302跳转状态值RedirectResult,跳转到给定的URL上。例如,“302 http://www.yh117.com/auctions/recent”.这个方法包含一个同级别的放啊RedirectPermanent(),它同样返回RedirectResult,但是使用的是301状态码去只是一个永久的跳转地址,而不是临时地址。

RedirectToAction()和RedirectToRoute()

与Redirect()类似,只有框架可以动态查询路由引擎来确定外部的URL.与Redirect()一样,他们同样包含永久跳转方法:RedirectToActionermanent()和RedirectToRoutePermanent()

View()

返回渲染视图的ViewResult()

综上所述:MVC框架提供了各种情况下需要的操作结果类型,我们可以自由决定使用哪种类型。

下面是我写的一个例子,返回JSon格式的

视图中的代码:

<script>
        function GetJosn()
        {
            alert(1);
            $.get("/Home/BookInfo", {id:"1"}, function (data) {
                alert(data.Result);
            },"json");
        }
    </script>

用的是Get方法获取的,这里需要注意的是“json”必须要用引号的,这是jquery语法

Controller中的中的代码是:

public JsonResult BookInfo(string id) {
            ResultJsonInfo resultInfo = new ResultJsonInfo();
            resultInfo.Result = true;
            resultInfo.Msg = "好啊";
            return Json(resultInfo,JsonRequestBehavior.AllowGet);
        }

这里用了一个ResultJsonInfo类的对象,包含返回结果和Message,然后利用JSON()方法返回该对象就行,不需要将该对象转成json格式,同事注意用GET方法获取时,在JSON()方法中一定要指定可以用Get获取,否则会获取不到。

MVC4中视图获取控制器中返回的json格式数据的更多相关文章

  1. 在thinkphp5.0中调用ajax时, 返回的JSON 格式数据在html前台不能用时

    在thinkphp5.0中调用ajax时,如果控制器返回的数据为json格式,视图层接收到返回值即为json格式的数据,此时应该把 JSON 文本转换为 JavaScript 对象,方便调用.具体代码 ...

  2. javascript解析从服务器返回的json格式数据

    在javascript中我们可以将服务器返回的json格式数据转换成json格式进行使用,如下: 1.服务器返回的json格式数据: 通过response.responseText获得: " ...

  3. 将PHP程序中返回的JSON格式数据用gzip压缩输出

    //phpinfo(); 搜索下 zlib 是否开启 //此示例开启压缩 Content-Length:124 Size: 404B //未开启gzip压缩 Content-Length:675 Si ...

  4. c# 通过URl 获取返回的json格式数据

    方法一 http://blog.csdn.net/angle_greensky110/article/details/52209497 protected string GetJson(string ...

  5. 后台获取POST方式提交的JSON格式数据

    1.直接使用request.getParamater()的方法获取(这种取参方式对于POST和GET的提交方式均适用): 2.通过请求体的IO流获取参数(这种方式只能用于POST,因为GET方式没有请 ...

  6. ajax请求后台,返回json格式数据,模板!

    添加一个用户的时候,需要找出公司下所有的部门,和相应部门下的角色,利用ajax请求,实现联动技术.将返回的json格式数据,添加到select标签下. <script type="te ...

  7. .netcore2.1在控制器中和类中,获取appsettings中值的方法

    一般我们在开发项目中,都会从配置文件中获取数据库连接信息.自定义参数配置信息等. 在.netcore中在控制器和自定义类中,获取配置文件中参数方式如下: appsettings.json { &quo ...

  8. struts2:JSON在struts中的应用(JSP页面中将对象转换为JSON字符串提交、JSP页面中获取后台Response返回的JSON对象)

    JSON主要创建如下两种数据对象: 由JSON格式字符串创建,转换成JavaScript的Object对象: 由JSON格式字符串创建,转换成JavaScript的List或数组链表对象. 更多关于J ...

  9. html中通过js获取接口JSON格式数据解析以及跨域问题

    前言:本人自学前端开发,一直想研究下js获取接口数据在html的实现,顺利地找到了获取数据的方法,但是有部分接口在调用中出现无法展示数据.经查,发现时跨域的问题,花费了一通时间,随笔记录下过程,以方便 ...

随机推荐

  1. OpenCV KNN 之 使用方法

    http://blog.csdn.net/WL2002200/article/details/43149229 OpenCV 中KNN构造函数如下. C++: CvKNearest::CvKNeare ...

  2. Python爬虫学习笔记之Centos下安装配置Mongodb3.6

    在Centos6.9上安装Mongodb时候,遇到"No package mongodb-org available"这个报错. 经过查询后,在Centos6.9上需要针对Mong ...

  3. 20145322 《Java程序设计》第6周学习总结

    20145322 <Java程序设计>第6周学习总结 教材学习内容总结 第十章 10.1.1 串流设计的概念 Java将输入/输出抽象化为串流,数据有来源及目的地,衔接两者的是串流对象. ...

  4. 轻谈Normalize.css

    Normalize.css 是 * ? Normalize.css只是一个很小的CSS文件,但它在默认的HTML元素样式上提供了跨浏览器的高度一致性.相比于传统的CSS reset , Normali ...

  5. Hive架构

    Hive组织数据包含四种层次:DataBase --> Table --> Partition --> Bucket,对应在HDFS上都是文件夹形式. 数据库和数据仓库的区别: 1) ...

  6. javascript的函数,定义

    函数 function       A               ()          { }函数体开头    函数名    传入的参数     方法 <button onclick=&qu ...

  7. Java高级面试题

    一.基础知识: 1)集合类:List和Set比较,各自的子类比较(ArrayList,Vector,LinkedList:HashSet,TreeSet): 2)HashMap的底层实现,之后会问Co ...

  8. LA 3295 数三角形

    https://vjudge.net/problem/UVALive-3295 题意: 数出n行m列的网格顶点能组成多少个三角形. 思路: 直接去数的话比较麻烦,这道题目是可以重复的,只要位置不同就可 ...

  9. 退出Vi(m)

    按ESC键 跳到命令模式,然后: :w 保存文件但不退出vi :w file 将修改另外保存到file中,不退出vi :w! 强制保存,不推出vi :wq 保存文件并退出vi :wq! 强制保存文件, ...

  10. 30分钟掌握Dart语言

    在Dart中,一切都是对象,一切对象都是class的实例,哪怕是数字类型.方法甚至null都是对象,所有的对象都是继承自Object 虽然Dart是强类型语言,但变量类型是可选的因为Dart可以自动推 ...