2011-03-30 119 views
3

我设置具有以下结构的解决方案:Asp.net MVC 3和NHibernate架构

  • Project.Core

    • 映象

  • Project.Web

    • 浏览

    • 模型

    • Contollers

Project.Web是asp.ne t MVC 3模板。我想知道如果我使用MVC和NHibernate,并且我不会使用其他Web应用程序来利用Project.Core库,那么最好的体系结构是什么。

它似乎像域和模型几乎是一回事?

如果我想使用域的而不是模型如何修改asp.net mvc3项目来接受这个?

谢谢

回答

1

是的,您的Project.Core中的域对象与您的模型相同。只需删除Project.Web中的Models文件夹,然后从Project.Web创建项目引用到Project.Core。由于Project.Core只是一个类库项目,并包含您的域模型,存储库和映射*,因此您可以使用Project.Web,控制台应用程序,Web服务或任何其他代码中的这些类。

+0

谢谢詹姆斯。我喜欢你在NHibernate 3上给出的最近的演示文稿。 – Mike 2011-03-30 22:18:01

+3

在mvc中,模型应该是视图的数据上下文,我不认为它应该与域对象混合。 – Eatdoku 2011-06-27 01:21:24

+0

是的,我宁愿不把它称为模型,而是使用ViewModel或PresentationModel来区分它们和域对象。 – Rushino 2011-09-15 15:02:05