一、所有的Controller都继承自System.Web.Mvc.Controller
目前ASP.NET MVC3默认提供了多种ActionResult的实现,在System.Web.Mvc命名空间里。
其中ActionResult是一个抽象类,所有一下的Result都继承自它,因此如果一个Action的返回值是ActionResult的话,可以返回以下任意一种类型的值,但是如果限制死了返回值为以下任意一种Result,则只能够返回指定的类型的数据了。
- ContentResult
- EmptyResult
- FileResult
- HttpStatusCodeResult
- HttpNotFoundResult
- HttpUnauthorizedResult
- JavaScriptResult
- JsonResult
- RedirectResult
- RedirectToRouteResult
- ViewResultBase
- PartialViewResult
- ViewResult
public ContentResult Index() ???????{ ???????????return Content("测试"); ??????//浏览器显示测试 ???????} ???????public EmptyResult Index() ???????{ ???????????return new EmptyResult(); ????//浏览器显示空白 ???????????????????} ???????public FileResult Index() ???????{ ???????????return File(Server.MapPath("~/demo.jpg"), "application/x-jpg", "demo.jpg"); ???????//浏览器直接下载demo.jpg ??????????} ???????public HttpNotFoundResult Index() ???????{ ???????????return HttpNotFound(); ????//报404错误 ?????????????????} ???????public HttpUnauthorizedResult Index() ???????{ ???????????return new HttpUnauthorizedResult(); ????//未授权的页面,跳转到/Account/LogOn ?????????????????} ???????public JavaScriptResult hello() ???????{ ???????????string js = "alert(‘你还好吗?‘);"; ???????????return JavaScript(js); ?????//页面显示 alert(‘你还好吗?‘);} 并不会执行这个js,要执行这个js可以在任意视图里<script src="@Url.Action("hello")" type="text/javascript"></script> ????????????} ???????public JsonResult Index() ???????{ ???????????var jsonObj = new ???????????{ ???????????????Id = 1, ???????????????Name = "小铭", ???????????????Sex = "男", ???????????????Like = "足球" ???????????}; ???????????return Json(jsonObj, JsonRequestBehavior.AllowGet); ????//返回一个JSON,可以将此代码输出到JS处理展示 ???????} ???????public RedirectResult Index() ???????{ ???????????return Redirect("~/demo.jpg"); ?????//可以跳转到任意一个路径 ???????????return Redirect("http://www.baidu.com"); ???????????return Redirect("/list"); ???????} ???????public RedirectToRouteResult Index() ???????{ ???????????return RedirectToRoute( ????//跳转到指定Action ???????????new ???????????{ ???????????????controller = "Home", ???????????????action = "GetName" ???????????}); ???????} ???????public ViewResult Index() ???????{ ???????????return View(); ?????????//这个是最常用的,返回指定视图 ???????????//return View("List"); ???????????//return View("/User/List"); ???????} ???????public PartialViewResult Index() ???????{ ???????????return PartialView(); ?????????//部分视图,可以作为一个部分引入另外一个视图中,跟View大致相同 ???????}
MVC所有的ActionResult
原文地址:https://www.cnblogs.com/DSC1991/p/9205334.html