Mvc4_ActionResult应用
通常我们在一个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应用的更多相关文章
随机推荐
- Python中通过cx_Oracle访问数据库遇到的问题总结
以下是Python中通过cx_Oracle操作数据库的过程中我所遇到的问题总结,感谢我们测试组的前辈朱勃给予的帮助最终解决了下列两个问题: 1)安装cx_Oracle会遇到的问题:在Windo ...
- Android OnTouchListener,OnClickListener和OnLongClickListener的关系
在OnTouchListener事件里有MotionEvent.ACTION_DOWN,MotionEvent.ACTION_UP和MotionEvent.ACTION_MOVE三个事件,我们在这里只 ...
- nn
<li> <a href="#" class="dropdown-toggle"> <i class="icon-des ...
- 关于qquu8 的主页修改
1) 找到 这个文件夹 C:\Users\lidu\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskB ...
- Duilib将UI资源文件打包到exe教程
转载:http://www.voidcn.com/blog/w839687571/article/p-6001921.html 转载:http://www.voidcn.com/blog/x35698 ...
- EI表达式和JSTL
JSP九大内置对象 WEB域内置对象(存值取值,传值数据用的) setAttribute/getAttribute; page 基本不用/ pageContext 只在本页面有效 ...
- FZU 2141 Sub-Bipartite Graph
Sub-Bipartite Graph Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u ...
- FZU 2146
Easy Game Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit St ...
- PCL点云库:对点云进行变换(Using a matrix to transform a point cloud)
点云数据可以用ASCII码的形式存储在PCD文件中(关于该格式的描述可以参考链接:The PCD (Point Cloud Data) file format).为了生成三维点云数据,在excel中用 ...
- Linux 在一个命令行上执行多个命令
Linux 在一个命令行上执行多个命令 1. [ ; ] 如果被分号(;)所分隔的命令会连续的执行下去,就算是错误的命令也会继续执行后面的命令. 2. [ && ] 如果命令被 &am ...