通常我们在一个ASP.NET MVC项目中创建一个Controller的时候,Index()方法默认的返回类型都是ActionResult,通过查看UML图,ActionResult实际上是一个抽象类,因此实际返回的类型是该抽象类的子类。

Ø ActionResult及其子类的UML图

 

有关ActionResult及其子类的UML图如下所示:

由于图片比较大,所以在浏览器中看起来可能比较小,也不太方便,大家可以点击这里下载大图,使用专业的图片浏览器打开来看。

下载大图

Ø ActionResult及其子类的对照表

ActionResult的子类名称

说明

ViewResult

表示HTML的页面内容

EmptyResult

表示空白的页面内容

RedirectResult

表示定位到另外一个URL

JsonResult

表示可以运用到AJAX程序中JSON结果

JavaScriptResult

表示一个JavaScript对象

ContentResult

表示一个文本内容

FileContentResult

表示一个可以下载的、二进制内容的文件

FilePathResult

表示一个可以下载的、指定路径的文件

FileStreamResult

表示一个可以下载的、流式的文件

通过我们在代码中编写,不难看到如下的一段代码:

public ActionResult Index()

{

return View();

}

可能有人会有疑问,既然我定义的是ActionResult,为什么返回值会是View呢?

其实这个View的类型是ActionResult的子类ViewResult,有关Controller中的方法与返回对象请参照下表:

Controller中的方法

返回对象

View

ViewResult

Redirect

RedirectResult

RedirectToAction

RedirectToActionResult

RedirectToRoute

RedirectToRouteResult

Json

JsonResult

JavaScriptResult

JavaScriptResult

Content

ContentResult

File

FileContentResult、FilePathResult、FileStreamResult

Mvc4_ActionResult应用的更多相关文章

随机推荐

  1. 周赛-DZY Loves Chessboard 分类: 比赛 搜索 2015-08-08 15:48 4人阅读 评论(0) 收藏

    DZY Loves Chessboard time limit per test 1 second memory limit per test 256 megabytes input standard ...

  2. 新注册域名greenopen.site,向专业道路进军

    新注册域名greenopen.site,向专业道路进军,欢迎访问!届时可以通过 greenopen.site jsxyhelu.github.io 或者jsxyhelu.cnblogs.com 访问本 ...

  3. Uva(10048),最短路Floyd

    题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem ...

  4. 动态规划(DP),模拟

    题目链接:http://poj.org/problem?id=1088 Memory: 252KTime: 16MSLanguage: C++Result: Accepted 解题报告: 1.lm[i ...

  5. #ifdef __cplusplus extern "C" { #endif

    1.在好多程序中我们会遇到下面代码段 #ifdef __cplusplus        extern "C" {        #endif //c语法代码段 #ifdef __ ...

  6. android 入门 005(登录记住)

    android 入门 005(登录记住) <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android ...

  7. Bad apple for CSharp

    前言:记得10年的时候我还在上学,有一天逛csdn看到了字符版的badapple,感觉这东西好NB啊,然后就下载了一份,最近整理博客就把他整理博客,原作者是谁真心不知道,这是在果壳看到的. Bad A ...

  8. http_load的安装及使用方法

    http_load 程序非常小,解压后也不到100K http_load以并行复用的方式运行,用以测试web服务器的吞吐量与负载.但是它不同于大多数压力测试工 具,它可以以一个单一的进程运行,一般不会 ...

  9. Python3基础 ,= 一个等式给多个变量赋值

    镇场诗:---大梦谁觉,水月中建博客.百千磨难,才知世事无常.---今持佛语,技术无量愿学.愿尽所学,铸一良心博客.------------------------------------------ ...

  10. Know How To Use ID_NULL Function To Search An Object In Oracle Forms

    ID_NULL built in function is used to determine that an object type variable is null or not null in O ...