asp.net-mvc – 如何在URL中没有控制器名称的单个控制器中获取操
发布时间:2020-12-16 09:54:20 所属栏目:asp.Net 来源:网络整理
导读:我正在开发一个简单的MVC网站.在我的项目中,只有一个控制器(Home)和2个动作方法(索引和内页).主页操作返回主页的视图,内页操作返回内页的内容(内页使用单个模板,因此对所有内页使用单个视图). 现在我想要的是,如果我运行项目,我得到的菜单如下: http://loca
我正在开发一个简单的MVC网站.在我的项目中,只有一个控制器(Home)和2个动作方法(索引和内页).主页操作返回主页的视图,内页操作返回内页的内容(内页使用单个模板,因此对所有内页使用单个视图).
现在我想要的是,如果我运行项目,我得到的菜单如下: http://localhost:3000/Home/ http://localhost:3000/Home/Info/AboutUs http://localhost:3000/Home/Info/Contact 但不是上面的路径,我需要路径,如: http://localhost:3000/Home/ http://localhost:3000/AboutUs http://localhost:3000/Contact 无需添加新控制器,url需要调用相应的操作方法. 我的路由文件是 routes.MapRoute( "Default",// Route name "{controller}/{action}/{id}",// URL with parameters new { controller = "Home",action = "Index",id = UrlParameter.Optional } // Parameter defaults ); 你能帮助我实现这个目标吗? 解决方法
您需要为路由表添加自定义路由.但请确保您也保留默认路线.例如,我在一个名为“HomeRoute”的自定义路线下创建,同时保留默认路线……
routes.MapRoute( name: "HomeRoute",url: "{action}",defaults: new { controller = "Home",action = "Index" } ); routes.MapRoute( name: "Default",url: "{controller}/{action}/{id}",id = UrlParameter.Optional } ); 但是,请注意您需要在家庭控制器中定义操作方法,因为默认控制器设置为“Home”,如果它们在不同的控制器中定义,则更改默认控制器 换句话说,如果你的家庭控制器定义如下…… public class HomeController : Controller { public ActionResult Index(){...} public ActionResult About(){...} } 然后,您可以使用以下路线导航到“关于”操作… 网站名称/关于 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-core – 从库项目中包含wwwroot?
- 如何在asp.net中真正注销
- asp.net – 你可以添加一个HtmlGenericControl的子控件吗?
- asp.net – 有没有办法以编程方式设置Elmah中的应用程序名称
- asp.net-mvc-3 – 构造函数注入用作Action方法参数的View M
- asp.net – 使用逗号分隔值搜索列
- asp.net-core-mvc – 如何防止Entity Framework Core 2.0重
- asp.net-mvc-3 – 使用Quartz.Net的MVC 3
- asp.net-mvc – HtmlHelper获取路由名称
- 使用asp.net发表评论到Facebook墙
推荐文章
站长推荐
- asp.net-mvc – 在同一个视图文件夹中的RenderPa
- asp.net-mvc – 如何在MVC3中创建一个隐藏字段?
- asp.net – AjaxControlToolkit MaskedEditExten
- asp.net-mvc-routing – ASP MVC 5属性路由VS.基
- asp.net-mvc – 将参数传递给html partial并在部
- asp.net-mvc – 剃刀替换的优点(@href)
- asp.net – WebApi:将参数映射到标头值
- asp.net-mvc – 使用ASP.NET MVC的IIS应用程序请
- asp.net – 在回发后阻止Bootstrap折叠切换
- ASP.NET Core使用单一形式的两个模型
热点阅读