2008-08-25 63 views
12

如何在新的微软asp.net MVC实现分区处理您的应用程序 - 例如:asp.net的MVC - 子

--index.aspx 
--about.aspx 
--contact.aspx 
--/feature1 
--/feature1/subfeature/action 
--/feature2/subfeature/action 

我猜我想说的是,它似乎一切都已经去进入views/controllers文件夹的根目录,当处理一个项目时,如果使用web窗体构建的项目可能有很多很多的文件夹和子文件夹来分割应用程序,那么这些文件夹可能会变得很笨重。

我想我得到了MVC模型,我喜欢它与网页形式相比的样子,但仍然让我的脑海中围绕着如何在实践中构建一个大型项目。

回答

11

组织控制器没有任何问题。您只需设置路线即可考虑组织。你将遇到的问题是找到控制器的视图,因为你改变了惯例。目前还没有任何内置功能,但使用ActionFilterAttribute和继承ViewLocator的自定义视图定位器可以轻松创建一项工作。然后,在创建控制器时,只需指定要使用的ViewLocator,以便控制器知道如何查找视图。如果需要,我可以发布一些代码。

这种方法伴随着一些建议,我给了另一个人使用ASP.NET MVC将他们的意见分离出来。作为参考,这里是link to the question

7

根据你如何安排你的意见,你可以把你的意见放在子文件夹,如果你想和创建自己的视图结构。所有视图都可以使用〜语法通过它们的完整路径来引用。因此,如果您将Index.aspx放在\ Views \ Feature1 \ Home中,那么您可以使用〜/ Views/Feature1/Home/Index.aspx来引用该视图。