mvc重定向方式详解
本文实例为大家分享了mvc重定向的几种方式,供大家参考,具体内容如下
在RouteConfig添加一个简单的路由
//新增路由
routes.MapRoute(
name:"Article",
url:"Detial/{id}",
defaults:new{controller="Article",action="Detial",id=UrlParameter.Optional},
constraints:new{id=@"\d+"}
//namespaces:newstring[]{}
);
302重定向
publicActionResultUrlTest1()
{//302
returnRedirect("/Article/Detial/1");
}
publicActionResultUrlTest2()
{//302
returnRedirectToAction("Detial","Article",newSystem.Web.Routing.RouteValueDictionary(new{id=2}));
//returnRedirectToAction("Detial","Article",new{id=1});
}
publicActionResultUrlTest3()
{//302
returnRedirectToRoute("Article",newSystem.Web.Routing.RouteValueDictionary(new{id=3}));
//returnRedirectToRoute("Article",new{id=1});
}
301重定向
publicActionResultUrlTest4()
{//301
returnRedirectPermanent("/Article/Detial/4");
}
publicActionResultUrlTest5()
{//301
returnRedirectToActionPermanent("Detial","Article",newSystem.Web.Routing.RouteValueDictionary(new{id=5}));
//returnRedirectToActionPermanent("Detial","Article",new{id=1});
}
publicActionResultUrlTest6()
{//301
returnRedirectToRoutePermanent("Article",newSystem.Web.Routing.RouteValueDictionary(new{id=6}));
//returnRedirectToRoutePermanent("Article",new{id=1});
}
也可以自己设置
publicActionResultUrlTest7()
{//可设置
returnnewRedirectToRouteResult("Article",newSystem.Web.Routing.RouteValueDictionary(new{id=7}),false){};
}
publicActionResultUrlTest8()
{//可设置
returnnewRedirectResult("/Article/Detial/8",false);
}
要注意的是,在View()中指定不同的视图不是重定向
publicActionResultUrlTest9()
{//200
returnView("Detial",null,new{id=9});
}
第二个代码段和第三个代码段中的方法,都会用第四个代码段中的形式最后以Response.Redirect方法返回给客户端
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。