博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ActionResult解析
阅读量:6263 次
发布时间:2019-06-22

本文共 4144 字,大约阅读时间需要 13 分钟。

原文地址:http://blog.csdn.net/gulijiang2008/article/details/7642213

ActionResult是一个抽象类, 在Action中返回的都是其派生类.下面是我整理的ASP.NET MVC 1.0 版本中提供的ActionResult派生类:

类名 抽象类 父类 功能
ContentResult     根据内容的类型和编码,数据内容.
EmptyResult     空方法.
FileResult abstract   写入文件内容,具体的写入方式在派生类中.
FileContentResult   FileResult 通过 文件byte[] 写入文件.
FilePathResult   FileResult 通过 文件路径 写入文件.
FileStreamResult   FileResult 通过 文件Stream 写入文件.
HttpUnauthorizedResult     抛出401错误
JavaScriptResult     返回javascript文件
JsonResult     返回Json格式的数据
RedirectResult     使用Response.Redirect重定向页面
RedirectToRouteResult     根据Route规则重定向页面
ViewResultBase abstract   调用IView.Render()
PartialViewResult   ViewResultBase 调用父类ViewResultBase 的ExecuteResult方法. 
重写了父类的FindView方法. 
寻找用户控件.ascx文件
ViewResult   ViewResultBase 调用父类ViewResultBase 的ExecuteResult方法. 
重写了父类的FindView方法. 
寻找页面.aspx文件

 

 

 

 

五.实例应用

1.添加Controller

安装了ASP.NET MVC后, 在项目上点击右键会找到添加Controller项:

2.添加Action

下面这个类提供了返回各种类型的ActionResult的Action实例:

public class DemoController : Controller    {        ///         /// http://localhost:1847/Demo/ContentResultDemo        ///         /// 
public ActionResult ContentResultDemo() { string contentString = "ContextResultDemo!"; return Content(contentString); } /// /// http://localhost:1847/Demo/EmptyResultDemo /// ///
public ActionResult EmptyResultDemo() { return new EmptyResult(); } /// /// http://localhost:1847/Demo/FileContentResultDemo /// ///
public ActionResult FileContentResultDemo() { FileStream fs = new FileStream(Server.MapPath(@"/resource/Images/1.gif"), FileMode.Open, FileAccess.Read); byte[] buffer = new byte[Convert.ToInt32(fs.Length)]; fs.Read(buffer, 0, Convert.ToInt32(fs.Length) ); return File(buffer, @"image/gif"); } /// /// http://localhost:1847/Demo/FilePathResultDemo /// ///
public ActionResult FilePathResultDemo() { //可以将一个jpg格式的图像输出为gif格式 return File(Server.MapPath(@"/resource/Images/2.jpg"), @"image/gif"); } /// /// http://localhost:1847/Demo/FileStreamResultDemo /// ///
public ActionResult FileStreamResultDemo() { FileStream fs = new FileStream(Server.MapPath(@"/resource/Images/1.gif"), FileMode.Open, FileAccess.Read); return File(fs, @"image/gif"); } /// /// http://localhost:1847/Demo/HttpUnauthorizedResultDemo /// ///
public ActionResult HttpUnauthorizedResultDemo() { return new HttpUnauthorizedResult(); } /// /// http://localhost:1847/Demo/JavaScriptResultDemo /// ///
public ActionResult JavaScriptResultDemo() { return JavaScript(@"alert(""Test JavaScriptResultDemo!"")"); } /// /// http://localhost:1847/Demo/JsonResultDemo /// ///
public ActionResult JsonResultDemo() { var tempObj = new { Controller = "DemoController", Action = "JsonResultDemo" }; return Json(tempObj); } /// /// http://localhost:1847/Demo/RedirectResultDemo /// ///
public ActionResult RedirectResultDemo() { return Redirect(@"http://localhost:1847/Demo/ContentResultDemo"); } /// /// http://localhost:1847/Demo/RedirectToRouteResultDemo /// ///
public ActionResult RedirectToRouteResultDemo() { return RedirectToAction(@"FileStreamResultDemo"); } /// /// http://localhost:1847/Demo/PartialViewResultDemo /// ///
public ActionResult PartialViewResultDemo() { return PartialView(); } /// /// http://localhost:1847/Demo/RedirectToRouteResultDemo /// ///
public ActionResult ViewResultDemo() { //如果没有传入View名称, 默认寻找与Action名称相同的View页面. return View(); } }
你可能感兴趣的文章
CSS 浮动
查看>>
JS —时间类
查看>>
pgpool-II的conn_info 指针的结构
查看>>
JAVA的CALLBACK
查看>>
转:Tomcat 启动报错The APR based Apache Tomcat Native l...
查看>>
MyFirefox v2.6.2 - 打造自己的 Firefox 便携版
查看>>
各大类库的类工厂
查看>>
asp.net关于上传文件修改文件名的方法
查看>>
敏捷结果30天之第九天:使用必须、应该、可以来确定每天事情的优先级
查看>>
NFS在redhat中的一些简易应用
查看>>
mysqlbinlog查看编码问题
查看>>
进程通信(VC_Win32)
查看>>
MVP福利--利用Azure虚拟机玩Windows Server 2012
查看>>
Mac中将delete键定义为删除键
查看>>
python 函数关键参数
查看>>
ubuntu一键安装lamp
查看>>
漫谈 Clustering (1): k-means
查看>>
SQL Server 查询性能优化——索引与SARG(三)
查看>>
Oracle EBS:打开工作日历查看
查看>>
浅谈字节序(Byte Order)及其相关操作
查看>>