如何复制网址栏中的名称。例如,我有products controller
和index method
。现在,在我的项目中,我正在运行localhost:89733/Products/Index
。但是,而不是Products/Index
想要给另一个名称运行相同的action method
。我怎样才能做到这一点。我的意思是我不想将控制器信息泄漏给其他人。任何帮助表示赞赏。
答案 0 :(得分:2)
您可以配置自定义路线:
routes.MapRoute(
"ProductsRoute",
"mycustomproductsname/{id}",
new { controller = "Products", action = "Index", id = UrlParameter.Optional }
);
现在,当您导航到mycustomproductsname/123
时,Index
控制器的Products
操作将被执行并作为id
参数传递123。
答案 1 :(得分:0)
我希望路由可以解决Global.asax文件应用程序启动事件中的目的
void Application_Start(object sender, EventArgs e)
{
// Code that runs on application startup
RegisterRoutes(RouteTable.Routes);
}
public void RegisterRoutes(RouteCollection routes)
{
//Treeview routing
routes.MapPageRoute("Home", "User/Dashboard", "~/Products/Index");
routes.MapPageRoute("SearchCustomer", "User/Search-Customer", "~/Products/SearchCustomer");
}
我希望你能要求这个并且它可以帮助你