Asp.net 使用.net 4 URL路由根据查询字符串将一个ASPX页面重定向到另一个页面?
我们正在重新构造我们的ASP.Net站点,我们需要将大量页面请求重定向到新页面。我想知道我们是否可以使用.NET4的路由机制来解决这个问题。将发生的情况是,对Asp.net 使用.net 4 URL路由根据查询字符串将一个ASPX页面重定向到另一个页面?,asp.net,url-routing,Asp.net,Url Routing,我们正在重新构造我们的ASP.Net站点,我们需要将大量页面请求重定向到新页面。我想知道我们是否可以使用.NET4的路由机制来解决这个问题。将发生的情况是,对OldPage.aspx?i=Parm1的请求现在将转到NewPage1.aspx,而OldPage.aspx?i=Parm2将转到NewPage2.aspx 我知道我们可以在OldPage.aspx上这样做: private void Page_Load(object sender, System.EventArgs e) { Re
OldPage.aspx?i=Parm1
的请求现在将转到NewPage1.aspx
,而OldPage.aspx?i=Parm2
将转到NewPage2.aspx
我知道我们可以在OldPage.aspx
上这样做:
private void Page_Load(object sender, System.EventArgs e)
{
Response.Status = "301 Moved Permanently";
Response.AddHeader("Location","http://www.new-url.com");
}
但是我们可以使用路由从一个aspx页面(和参数)映射到另一个aspx页面吗?看起来RouteTable更多的是用于设置MVC样式的路由,而不是处理从一个ASPX页面到另一个页面的重定向。但是,如果我能让它与RouteTable一起工作,我可以删除OldPage.aspx
routes.MapPageRoute(
"MarketReports", // Route name
"Reports/{*i}", // Route URL
"~/pageControl2.aspx" // Web page to handle route
);
也许这篇MSDN文章可以帮助: