在ASP.NET MVC2中,
如何更改路由/文件夹结构,以便我可以
而不是:
我实际上并不想为帐户做这件事,但我想构建类似的东西,例如。
所以我可以有两个不同的观点,如:
视图\分类\
视图\管理员\分类\
这些会以完全不同的方式显示。
我想要做的就是能够创建自己的子文件夹来将视图推入,而不是每个不同控制器的单独文件夹................... ............................................
答案 0 :(得分:3)
听起来像你需要研究使用区域......看看这篇文章了解更多信息:
Walkthrough: Organizing an ASP.NET MVC Application using Areas
摘录:
但是,某些应用程序可能拥有大量控制器,并且每个控制器都可以与多个视图关联。对于这些类型的应用程序,默认的ASP.NET MVC项目结构可能变得难以处理。
为了适应大型项目,ASP.NET MVC允许您将Web应用程序划分为更小的单元(称为区域)。区域提供了将大型MVC Web应用程序分成较小功能组的方法。区域实际上是应用程序内的MVC结构。应用程序可以包含多个MVC结构(区域)。
HTHS,
查尔斯
答案 1 :(得分:2)
使用asp.net MVC约定来查看位置;如果你想拥有不同的url路径,你需要查看创建自己的路由,而不是给你的默认单一路由。 (见this primer。)
以下是您可以在Global.asax中添加以获得所需结果的路线示例,但您必须将此路线适当地映射到控制器操作。真的,你需要决定模式以满足你的应用程序的需要...
routes.MapRoute(
"FolderRoute",
"{controller}/{folder}/{action}/{id}",
new { controller = "Home", folder = "yourFolderDefault", action = "Index", id = "" }
);