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)
{
Response.Status = "301 Moved Permanently";
Response.AddHeader("Location","http://www.new-url.com");
}
しかし、ルーティングを使用して、あるaspxページ(およびパラメーター)から別のaspxページにマップできますか?RouteTableは、あるASPXページから別のページへのリダイレクトを処理するのではなく、MVCスタイルのルーティングを設定するためのもののようです。ただし、これをRouteTableで機能させることができれば、OldPage.aspxを削除できます。
routes.MapPageRoute(
"MarketReports", // Route name
"Reports/{*i}", // Route URL
"~/pageControl2.aspx" // Web page to handle route
);