回答
您可以使用区域以较小的块来构建大型站点。
从MSDN:
MVC模式将来自其表示逻辑和业务逻辑的应用 的模型(数据)的逻辑。在ASP.NET MVC中,这个 逻辑分隔也在物理上实现在项目 结构中,其中控制器和视图保存在使用命名约定定义关系的文件夹中。这种结构支持大多数Web应用程序的需求。
然而,一些应用程序可以有大量的控制器,并且每个控制器可以与几个视图相关联。对于这些类型的应用程序,默认的ASP.NET MVC项目结构可能变得笨拙难懂。
为了适应大型项目,ASP.NET MVC允许您将Web 应用程序划分为称为区域的较小单元。区域 提供了一种将大型MVC Web应用程序分成更小的功能分组的方法。一个区域实际上是一个应用程序中的 内的MVC结构。一个应用程序可能包含几个MVC结构 (区域)。
例如,一个大的电子商务应用程序可以被划分成 代表的店面面积,产品评测,用户 帐户管理和采购系统。每个区域 代表整个应用程序的单独功能。
来源:http://msdn.microsoft.com/en-us/library/ee671793.aspx
在Visual Studio项目中的只是点击右键并说“添加区域”来添加一个新的领域。
如果您需要从您的视图引用另一个区域,您只需要添加一个“区域”参数设置为路由收藏价值:
@Html.ActionLink("[LinkText]", "[ActionName]", "[ControllerName]", new { area = "[AreaName]" }, null);
控制器只是类,因此您应该能够实例化它们并将它们的操作视为它们是应用程序层的一部分。
另一个想法,如果你在开发早期,考虑到MVC4s WebAPI。如果您可以将子应用程序的控制器转换为ApiControllers,那么您可以启动主应用程序可以调用的服务层。
正确的,我可以从其他类实例化他们,但我想做得更好。例如,为每个子应用程序使用路径文件... – 2012-03-31 11:54:28
您可能可以得到这个工作,但不会在mvc应用程序之间建立紧密的依赖关系吗?也许你可以使用接口抽象子应用程序控制器,然后用Ioc容器解决它们。 – vansimke 2012-03-31 12:03:33
- 1. 使用其他应用程序控制应用程序
- 2. 使应用程序运行在其他应用程序上方
- 3. 与其他应用程序
- 4. 其他Android应用程序
- 5. 应用程序由用户或其他应用程序启动?
- 6. C++ cgi应用程序调用其他程序失败
- 7. 你将如何从本地iPhone应用程序调用其他应用程序?
- 8. 连续将数据从一个应用程序发送到其他应用程序的其他应用程序?
- 9. 如何从其他应用程序启动ClickOnce应用程序?
- 10. 重定向到其他应用程序的应用程序
- 11. 其他应用程序中的包装Rails应用程序
- 12. iOS - 包含其他应用程序的应用程序
- 13. 托管一组其他应用程序的应用程序
- 14. iPhone应用程序可以销售其他应用程序吗?
- 15. 其他Web应用程序中的Web应用程序
- 16. 将一个Android应用程序导入其他应用程序
- 17. iphone应用程序如何知道其他应用程序?
- 18. Metro应用程序能否注意到其他应用程序?
- 19. 螺纹应用程序与其他应用程序睡觉
- 20. PhoneGap - 从当前应用程序启动其他应用程序
- 21. 从其他应用程序打开您的应用程序
- 22. Android应用程序修改其他应用程序的功能
- 23. 使用其他应用程序更新应用程序信息(插件)
- 24. 如何使用其他应用程序中的功能创建应用程序
- 25. 如何停止一个应用程序使用其他应用程序
- 26. 使用其他应用程序发送消息到线应用程序
- 27. 使用其他应用程序扩展Google搜索应用程序结果
- 28. 使用其他Web应用程序从Web应用程序打开文件?
- 29. 使Android应用程序图标可用于其他应用程序
- 30. 重新部署由其他应用程序使用的BizTalk应用程序
你看过使用一个大的网站,并与区域分开吗? – aKzenT 2012-03-31 11:47:20
@aKzenT:你可以更好地描述它吗?我认为这是我想要的...... – 2012-03-31 11:50:27
你是什么意思,称这个动作?描述你想要存档的内容; – 2012-03-31 11:51:57