代码之家  ›  专栏  ›  技术社区  ›  ajma

ASP.NET MVC解决方案组织

  •  5
  • ajma  · 技术社区  · 17 年前

    我看了他们的组织是如何运作的( http://oxite.codeplex.com/Wiki/View.aspx?title=architecture )但我想知道其他人是怎么做的。有什么建议吗?

    目前,我正在考虑一些与Oxite非常相似的东西:

    项目-此项目包含模型层,其中包括模型、配置类以及服务和存储库的接口。这里不应该有太多的应用程序逻辑,主要是数据结构。

    这个项目包含控制器和路由的所有代码,包括过滤器和结果。这里还包括ViewData模型。

    2 回复  |  直到 17 年前
        1
  •  8
  •   Bramha Ghosh    17 年前

    S#arp Architecture 将其控制器、服务和核心拆分为具有相应测试项目的项目。

        2
  •  2
  •   Praveen Angyan    17 年前

    模型-MVC中的M,它包含所有的业务类。如果您能够管理它(您确实应该这样做),那么这里就不应该有持久性或与web服务相关的类。当然,您可以在这个项目中定义数据访问接口。检查此项目是否“干净”数据访问的一种快速方法是检查您是否需要在此项目中引用NHibernate之类的数据访问DLL。 原因:从理论上讲,您应该能够捆绑这个项目并在其他任何地方使用这些类,即使您切换到不同的UI,如控制台等。

    理由:如果你有一个网站设计师,你可以让他/她访问这个项目,让他工作。

    Controllers-MVC中的C,它包含所有控制器以及ModelBinder。 原因:模型、视图和控制器的三个不同项目使得问题泄漏更难发生。

    服务-所有web服务、持久性相关代码都放在这个项目中。

    目前,任何实用程序类都会进入Project.Models,但我认为最好为实用程序类提供一个单独的解决方案,并在需要时将它们作为编译程序集的引用导入。

    推荐文章