zoukankan      html  css  js  c++  java
  • 理解ASP.NET MVC中的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

  • 相关阅读:
    Algorithm Gossip (48) 上三角、下三角、对称矩阵
    .Algorithm Gossip (47) 多维矩阵转一维矩阵
    Algorithm Gossip (46) 稀疏矩阵存储
    Algorithm Gossip (45) 费氏搜寻法
    Algorithm Gossip (44) 插补搜寻法
    Algorithm Gossip (43) 二分搜寻法
    Algorithm Gossip (42) 循序搜寻法(使用卫兵)
    Algorithm Gossip (41) 基数排序法
    Algorithm Gossip (40) 合并排序法
    AlgorithmGossip (39) 快速排序法 ( 三 )
  • 原文地址:https://www.cnblogs.com/armyfai/p/3894996.html
Copyright © 2011-2022 走看看