Ian*_*ink 2 asp.net asp.net-mvc asp.net-mvc-routing asp.net-mvc-4
我们正在将一个旧的asp.net网站重新编写成MVC4.
我们的网站有许多链接看起来像这样(我们无法控制但必须支持):
www.some.com/page.aspx?id=5
Run Code Online (Sandbox Code Playgroud)
有没有办法得到/page.aspx?id=5的请求到路由,以便我们可以处理请求,将其传递给控制器/操作,然后从那里处理它?
在RouteConfig中,添加路由(在默认路由之前):
routes.MapRoute(
name: "DefaultAspx",
url: "page.aspx",
defaults: new { controller = "MyAspxPage", action = "Index", id = UrlParameter.Optional }
);
Run Code Online (Sandbox Code Playgroud)
在控制器中捕获页面ID:
(MyAspxPageController)
public ActionResult Index(int id)
{
// Do whatever needed
//return View();
}
Run Code Online (Sandbox Code Playgroud)