(转)MVC4中视图获取控制器中返回的格式数据

再开发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格式的

视图中的代码:


用的是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中视图获取控制器中返回的格式数据)