从.aspx url重定向到.aspx页面

时间:2013-11-14 02:20:35

标签: c# asp.net-mvc-4 redirect

我正在将我的asp.net页面从asp.net 2.0更新为MVC4。

我要做的是基本上继续支持现有的网址:

mypage.com/one.aspx向后兼容,除了我想将所有aspx页面放在aspx目录中,所以新的url将是mypage.com/aspx/one.aspx

如果我直接输入网址mypage.com/aspx/one.aspx,则会有效,页面会出现。

现在我正在尝试使用RouteConfig告诉它将one.aspx重定向到aspx/one.aspx,但我看不出怎么做。我看到所有RouteConfig示例都使用控制器,这不是我想要做的:

routes.MapRoute(name: "ONE", url: "one.aspx", defaults: new { controller = "Home", action = "Index" });

有没有办法在RouteConfig中使用MapRoute重定向到另一个aspx页面?我正在使用C#和MVC4。

2 个答案:

答案 0 :(得分:2)

这必须有效:

routes.MapPageRoute("aspx-redirection", "{page}.aspx", "~/aspx/{page}.aspx");

答案 1 :(得分:0)

有...... 但它并非直接来自MapRoute

routes.MapRoute(
        name: "Legacy",
        url: "aspx222/{page}.aspx",
        defaults: new { controller = "Home", action = "Page", page = UrlParameter.Optional }

    );

在Home in Page

之后
public ActionResult Page(string page)
{

    return Redirect(String.Format("/aspx/{0}.aspx",page));

}