RedirectResult:运行重新导向到其他网址,在RedirectResult的内部,基本上还是以Response.Redirect方法响应HTTP 302暂时导向。

eg:
public ActionResult Redirect()
{
return Redirect("/Home/NewIndex");
}
 
在mvc3版本之后,System.Web.Mvc.Controller类型还内建了一个RedirectPermanent辅助方法,可以让Action响应HTTP 301永久导向,使用HTTP 301永久导向还可以提升SEO效果,可保留原本页面网址的网页排名Ranking记录,并自动迁移到转向的下一页,这对于网站改版导致网站部分页面的网址发生变更时非常使用。
eg:
public ActionResult Redirect()
{
return RedirectPermanent("/Home/NewIndex");
}
 
RedirectToRoute:与前者类似,不够它会替你运算所有现有的网址路由值RouteValue,并比对网址路由表RouteTable中的每条规则,有助于生成mvc的网址。
 
控制器类别中有四个与RedirectToRoute有关的辅助方法
1,RedirectToAction
2,RedirectToActionPermanent
3,RedirectToRoute
4,RedirectToRoutePermanent
上述1,2是一个比较简单的版本,直接传入Action名称就可设置让浏览器转向该Action的网址,也可以传入新增的RouteValue值。
eg:
public ActionResult RedirectToActionSample()
{
//转址到同控制器的另一个Action
return RedirectToAction("SamplePage");
//转址到指定控制器的特定action并采用http 301永久转址
return RedirectToActionPermanent("List","Member");
//转址到MemberController的ListAction,并且加上page这个RouteValue
return RedirectToAction("List","Member",new { page=3});
}
3,4则是较高级的版本,可利用在Global.asax中定义的网址路由表来指定不同的转向网址,
eg:
public ActionResult aaa()
{
//转址到同控制器的另一个Action
return RedirectToRoute( new { action="SamplePage"});
//转址到指定控制器的特定action
return RedirectToRoute( new { controller="Member",action="List"});
//转址到MemberController的List Action,并且加上page这个RouteValue
return RedirectToRoute( new { controller="Member", action="List",page=3})
//转址到App_Start\RouteConfig.cs中的registerRoutes方法定义的网址路由表中的某个路由
return RedirectToRoute(RouteConfig.cs中某个MapRoute下配置的路由name);
}

RedirectResult,RedirectToRoute的更多相关文章

  1. MVC4笔记 RedirectResult,RedirectToRoute

    RedirectResult:运行重新导向到其他网址,在RedirectResult的内部,基本上还是以Response.Redirect方法响应HTTP 302暂时导向. eg: public Ac ...

  2. MVC4 View 的呈现

    一 ActionResult: 1. EmptyResult: Action方法返回的ActionResult对象被ActionInvoker 调用以实现对当前请求的响应,不论Action方法是否具有 ...

  3. 了解ASP.NET MVC几种ActionResult的本质:HttpStatusCodeResult & RedirectResult/RedirectToRouteResult

    在本系列的最后一篇,我们来讨论最后三个ActionResult:HttpStatusCodeResult.RedirectResult和RedirectToRouteResult .第一个用于实现针对 ...

  4. MVC Controller return 格式之JsonResult、ContentResult、RedirectResult……

      //语法 public class JsonResult : ActionResult public class ContentResult : ActionResult public class ...

  5. .net mvc onexception capture; redirectresult;

    need to set filtercontext.result=new redirectresult('linkcustompage'); done. so... ASP.NET MVC异常处理模块 ...

  6. Controller中利用RedirectToRoute重定向的问题

    先看看我们例子用到的路由表 routes.MapRouteWithName( name: "ProductDetail", url: "{Platform}/Produc ...

  7. 一步步学习ASP.NET MVC3 (8)——EmptyResult,ContentResult,RedirectResult

    请注明转载地址:http://www.cnblogs.com/arhat 上一章,我们阐述了Controller,Action和ActionResult所代表的含义及使用,本章继续研究ActionRe ...

  8. 跨控制器跳转view——RedirectToRoute和RedirectToAction

    已知控制器AccountController.cs和HomeController.cs,如果从页面Account/Login直接跳转到Home/Index,可以利用RedirectToRoute和Re ...

  9. MVC Ajax调用Action时-OnActionExecuting RedirectResult 无法跳转的处理办法

    public class BaseController : Controller { protected override void OnActionExecuting(ActionExecuting ...

随机推荐

  1. inner join、left join、right join等的区别

    left join :左连接,返回左表中所有的记录以及右表中连接字段相等的记录.right join :右连接,返回右表中所有的记录以及左表中连接字段相等的记录.inner join: 内连接,又叫等 ...

  2. Android: 启动另外的APP及传递参数(转)

    转载自:http://blog.csdn.net/iefreer/article/details/8812585 有时候需要从一个APP中启动另外一个APP,比如Twitter/微信等. 如果你不知道 ...

  3. 浅谈c++ new and delete or new [] and delete []

    http://www.cnblogs.com/hazir/p/new_and_delete.html 在 C++ 中,你也许经常使用 new 和 delete 来动态申请和释放内存,但你可曾想过以下问 ...

  4. html中rel标签是什么意思

    <a> 标签的 rel 属性用于指定当前文档与被链接文档的关系.用于 <a> 标签的可选属性 rel 和 rev 分别表示源文档与目标文档之间正式的关系和方向.rel 属性指定 ...

  5. IntelliJ下使用Code/Live Template加快编码速度:程序员的工作不是写程序,而是写程序解决问题

    程序员的工作不是写程序,而是写程序解决问题. --- 某不知名程序员 我们每天都在写代码,有些代码有结构性的相似,但不是所有的代码都可以被抽成方法.在这种情况下,我们应该考虑使用template的方式 ...

  6. Memcached GUI工具

    1, http://www.junopen.com/memadmin/   或 https://github.com/junstor/memadmin 帐号和密码都是:admin 在左下的数据读取里面 ...

  7. CAD 快捷键Ctrl+2 Ctrl+3

    今天用cad,学习了两个快捷键,第一个Ctrl+2,打开如下 第二个是Ctrl+3,打开如下:

  8. Swift版iOS游戏框架Sprite Kit基础教程下册

    Swift版iOS游戏框架Sprite Kit基础教程下册 试读下载地址:http://pan.baidu.com/s/1qWBdV0C 介绍:本教程是国内唯一的Swift版的Spritekit教程. ...

  9. jsp错误解决办法

    jsp页面出现"<%@"的错误提示的解决办法 原因是缺少jar包,在tomcat下的lib中找到servlet-api.jar复制到工程的webcontent->lib ...

  10. [LintCode] Find the Weak Connected Component in the Directed Graph

      Find the number Weak Connected Component in the directed graph. Each node in the graph contains a ...