zoukankan      html  css  js  c++  java
  • ActionResult解析

    原文地址: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项:

    image

    2.添加Action

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

    public class DemoController : Controller
        {
    
            /// <summary>
            /// http://localhost:1847/Demo/ContentResultDemo
            /// </summary>
            /// <returns></returns>
            public ActionResult ContentResultDemo()
            {
                string contentString = "ContextResultDemo!";
                return Content(contentString);
            }
    
            /// <summary>
            /// http://localhost:1847/Demo/EmptyResultDemo
            /// </summary>
            /// <returns></returns>
            public ActionResult EmptyResultDemo()
            {
                return  new EmptyResult();
            }
    
            /// <summary>
            /// http://localhost:1847/Demo/FileContentResultDemo
            /// </summary>
            /// <returns></returns>
            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");
            }
    
            /// <summary>
            /// http://localhost:1847/Demo/FilePathResultDemo
            /// </summary>
            /// <returns></returns>
            public ActionResult FilePathResultDemo()
            {
                //可以将一个jpg格式的图像输出为gif格式
                return File(Server.MapPath(@"/resource/Images/2.jpg"), @"image/gif");
            }
    
            /// <summary>
            /// http://localhost:1847/Demo/FileStreamResultDemo
            /// </summary>
            /// <returns></returns>
            public ActionResult FileStreamResultDemo()
            {            
                FileStream fs = new FileStream(Server.MapPath(@"/resource/Images/1.gif"), FileMode.Open, FileAccess.Read);
                return File(fs, @"image/gif");
            }
    
            /// <summary>
            /// http://localhost:1847/Demo/HttpUnauthorizedResultDemo
            /// </summary>
            /// <returns></returns>
            public ActionResult HttpUnauthorizedResultDemo()
            {
                return new HttpUnauthorizedResult();
            }
    
            /// <summary>
            /// http://localhost:1847/Demo/JavaScriptResultDemo
            /// </summary>
            /// <returns></returns>
            public ActionResult JavaScriptResultDemo()
            {
                return JavaScript(@"alert(""Test JavaScriptResultDemo!"")");
            }
    
            /// <summary>
            /// http://localhost:1847/Demo/JsonResultDemo
            /// </summary>
            /// <returns></returns>
            public ActionResult JsonResultDemo()
            {
                var tempObj = new { Controller = "DemoController", Action = "JsonResultDemo" };
                return Json(tempObj);
            }
    
            /// <summary>
            /// http://localhost:1847/Demo/RedirectResultDemo
            /// </summary>
            /// <returns></returns>
            public ActionResult RedirectResultDemo()
            {
                return Redirect(@"http://localhost:1847/Demo/ContentResultDemo");
            }
    
            /// <summary>
            /// http://localhost:1847/Demo/RedirectToRouteResultDemo
            /// </summary>
            /// <returns></returns>
            public ActionResult RedirectToRouteResultDemo()
            {
                return RedirectToAction(@"FileStreamResultDemo");
            }
    
            /// <summary>
            /// http://localhost:1847/Demo/PartialViewResultDemo
            /// </summary>
            /// <returns></returns>
            public ActionResult PartialViewResultDemo()
            {
                return PartialView();
            }
    
            /// <summary>
            /// http://localhost:1847/Demo/RedirectToRouteResultDemo
            /// </summary>
            /// <returns></returns>
            public ActionResult ViewResultDemo()
            {
                //如果没有传入View名称, 默认寻找与Action名称相同的View页面.
                return View();
            }
    
        }
  • 相关阅读:
    吃素到底能不能减肥? 生活至上,美容至尚!
    女性生理期如何清洁? 生活至上,美容至尚!
    怎么去大蒜味(一定要看拉) 生活至上,美容至尚!
    排毒减肥几大绝招让你轻松扫除油脂 生活至上,美容至尚!
    常用食物排毒护身 排除毒素 一身轻松 生活至上,美容至尚!
    生活家健康饮食:巧用食醋让女人内外兼修 生活至上,美容至尚!
    冬季护肤必看!冬季巧防皮肤干燥 生活至上,美容至尚!
    喝牛奶要注意的一些事情 生活至上,美容至尚!
    夏天如何盘头发(附图解) 生活至上,美容至尚!
    黑眼圈的去除办法和草方 生活至上,美容至尚!
  • 原文地址:https://www.cnblogs.com/niaowo/p/3778106.html
Copyright © 2011-2022 走看看