在MVC3应用程序中,我的家庭控制器中有一个视图,可以通过以下网址访问该视图:
http://mysite.com/home/mycontent
但是,我的用户想要通过以下方式访问它:
http://mysite.com/mycontent (没有对家庭控制器的特定引用)
我已经尝试使用以下命令修改我的global.asax:
routes.MapRoute(
"MyContent", // Route name
"MyContent", // URL with parameters
new { controller = "Home", action = "MyContent"} // Parameter defaults
);但是当我尝试使用它时,我得到了404个错误。有没有一种方法可以完成我的用户想要做的事情--将URL重定向到特定的控制器/视图对?
发布于 2012-05-04 00:41:28
我认为你应该保留一些“参数”:
routes.MapRoute(
"MyContent", // Route name
"{action}/{id}", // URL with parameters
new { controller = "Home", action = "MyContent", id = ""} // Parameter defaults
);发布于 2012-05-04 00:59:10
您的路线是按什么顺序注册的?该路由应位于您的默认路由之前。
例如。
routes.MapRoute(
"MyContent", // Route name
"MyContent", // URL with parameters
new { controller = "Home", action = "MyContent"} // Parameter defaults
);
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Pages", action = "Index", id = UrlParameter.Optional }
);否则,它应该可以工作...我已经定义了与此完全相同的路由。
https://stackoverflow.com/questions/10435567
复制相似问题