我需要我的ASP.NET MVC5视图结构来反映我的控制器的结构。基于控制器结构的MVC自定义视图路由
我的申请的控制器具有以下结构:
Controllers
|--- Main
| |--- HomeController.cs
|--- User
| |--- HomeController.cs
| |--- SettingsController.cs
|--- Admin
| |--- HomeController.cs
| |--- ManageController.cs
控制器结构根据用户类型和Main
控制器到所有用户访问。我的网址是这样的:
/Main/Home
(默认)/User/Settings
/Admin/Manage/Users
但你可以看到所有命名空间有一个HomeController
,但是当我想创建,例如,User/HomeController
的索引视图将被放置在Views/Home/Index.cshtml
之内。但我实际上需要这种观点:Views/User/Home/Index.cshtml
。下面是我需要结构化视图的示例结构。
Views
|--- Main
| |--- Home
| | |--- Index.cshtml
| | |--- Contact.cshtml
|--- User
| |--- Home
| | |--- Index.cshtml
| |--- Settings
| | |--- Index.cshtml
|--- Admin
| |--- Home
| | |--- Index.cshtml
| |--- Manage
| | |--- Index.cshtml
| | |--- Users.cshtml
我试图用一个自定义RazorViewEngine
当然所有的例子我能找到(like this one)不会对我的情况下工作。有没有办法通过自定义路由来实现这个特定的结构?
地区将是您的问题的良好解决方案。你可以在谷歌中获得大量的保持链接。 –