【问题标题】:ASP.NET MVC Areas: Are they important to a large application?ASP.NET MVC 领域:它们对大型应用程序是否重要?
【发布时间】:2009-01-20 18:23:38
【问题描述】:

我正在开发一个大型 ASP.NET MVC 应用程序。我目前正在研究用于构建控制器/视图的机制。我看到有人提到单轨铁路,它使用“区域”。我已经查看了Haacked's 文章,它看起来像是一个有趣的选择。我想知道是否有人在生产的 ASP.NET MVC 应用程序中实现了区域,以及他们是否有任何在线资源可以帮助实现这些区域并证明它们的存在。

【问题讨论】:

标签: asp.net-mvc


【解决方案1】:

我和我的团队目前正在使用 ASP.NET MVC 框架作为底层技术开发一个非常大的应用程序。我们正在使用AreasStrongly Typed View Names 和我们自己的Localisation 版本。到目前为止,它的合作非常好。

对我来说,与 ASP.NET MVC 的交易破坏者将是控制器名称必须是唯一的。完全可以预见,需要一个控制器来管理我的应用程序的库存和调度区域内的库存以及对这些区域进行分类太难了。对于区域,这不再是问题。我强烈建议按照 Phil Haack 的概述使用它们。

或者,您可以查看Steven Sanderson's implementation,他在其中更进一步,尽管对我们来说这不是我们需要的东西。

如果很快看到 Areas 在 ASP.NET MVC 中实现,我不会感到惊讶。

祝你的应用程序好运,我认为你不会后悔选择 ASP.NET MVC。

【讨论】:

【解决方案2】:

在我看来,大型应用程序中的区域支持绝对至关重要。对我来说,微软打算发布没有内置支持区域的 ASP.NET MVC 1.0 似乎很奇怪。

幸运的是,MVC 在可扩展性方面弥补了功能上的不足。例如,在 S#arp 架构中,正如 Asaf 简要提到的,我从 Phil Haack (http://haacked.com/archive/2008/11/04/areas-in-aspnetmvc.aspx) 和 Steve Sanderson (http://blog.codeville.net/2008/11/05/app-areas-in-aspnet-mvc-take-2/) 那里得到指导,但修改了合并结果以支持视图文件夹下的区域。 (我不喜欢有一个单独的“Areas”文件夹来保存您的视图区域。)换句话说,如果您使用相应的控制器 Animals.AardvarksController 创建一个“Animals”区域,您的 Views 文件夹将反映 Views/Animals /土豚。

如果您对使用所有 S#arp 架构不感兴趣,我建议您至少检查一下该框架中的区域是如何实现的,以便在您自己的应用程序中使用。相关代码包括:

顺便说一下,S#arp 架构包括一个 CRUD 脚手架生成器,它自动考虑嵌套命名空间。正如 Asaf 所提到的,您可以通过http://code.google.com/p/sharp-architecture/了解更多信息

比利·麦卡弗蒂

【讨论】:

【解决方案3】:

取自S#arp apchitecture 1.0 Beta 发行说明:

包含的视图“区域”是 作为子文件夹无缝支持 在 Views 文件夹下

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-07-19
    • 2014-08-21
    • 2011-02-04
    • 2012-02-22
    • 2011-04-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多