MVC之ActionResult
2024-09-23 11:26:13
一、所有的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大致相同
}
最新文章
- HiHo Coder字典树 TrieTree
- (转)CPU Cache与内存对齐
- 【bzoj2730】 HNOI2012—矿场搭建
- ssm(spring,springmvc,mybatis)
- 解决log4j:WARN Error initializing output writer. log4j:WARN Unsupported encoding?的问题
- 自定义view实现水波纹效果
- 进击的java - tomcat的安装,配置都正确之后,还是报错
- 【Pyhton Network】使用poll()或select()实现非阻塞传输
- BZOJ2005: [Noi2010]能量采集 莫比乌斯反演的另一种方法——nlogn筛
- 用原生JS写移动动画案例及实际应用
- C++中运行外部程序
- POJ1556 The Doors [线段相交 DP]
- go语言 nsq源码解读四 nsqlookupd源码options.go、context.go和wait_group_wrapper.go
- GA中的术语及经常分析的指标
- Period kmp
- ethereum/EIPs-1193 Ethereum Provider JavaScript API 如metamask更新后的接口
- VS2017中 C# dll引用(C生成dll,C++生成dll)小结 - 简书
- tomcat 启动时遇到org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs
- 阅读 RAM-Based Shift Register(ALTSHIFT_TAPS) IP Core User Guide
- centos救援模式实验笔记
热门文章
- WINAPI大全~
- 非索引列上的统计 <;第二篇>;
- PowerShell常用的属性
- android AndroidManifest.xml 多个android.intent.action.MAIN (
- Hdu4005-The war(双连通缩点)
- Linux下如何选择文件系统:EXT4、Btrfs 和 XFS
- [置顶] Objective-C ,ios,iphone开发基础:自定义控件:Eg: UIButton
- MVC Razor视图引擎
- 修改UISearchBar背景色
- 原生AJAX如何异步提交数据?