我正在学习ASP.NET MVC,我喜欢它。然而,我对命名模型的正确方法感到非常困惑。
在剖析NerdDinner示例应用程序时,我注意到Models文件夹中的所有内容都属于Models名称空间。数据映射类、存储库、错误规则管理等属于相同的命名空间级别。
我知道这个文件夹的灵感来自Rails和friends等框架,并且需要它来证明MVC标题中的M是正确的;但是,自动模型命名空间不会破坏编写跨不同系统和实现的可拆分和可移植的业务逻辑的机会吗?
我应该在这个Model命名空间下命名我的业务逻辑,还是应该完全忽略它,以一种更独立于框架的方式对我的类进行分类?
有没有什么复杂而好的ASP.NET MVC示例应用来演示这一点呢?
发布于 2009-04-20 01:56:55
我会以对你最有意义的方式对你的类进行分类,我怀疑他们在Nerd晚餐示例应用程序中使用了这个名称空间,因为从学习的角度来看,对于开发人员来说,总是看到他们在应用程序的Model部分是很好的。
就我个人而言,我不会在Model文件夹中放置任何内容,并为我的实体(App.Domain)和域服务(App.Services)创建单独的项目。我还为这两个项目创建了.Tests项目。
发布于 2009-05-07 17:07:56
我的开发人员告诉我,我们应该将数据模型完全重构到另一个项目中。有些人甚至在另一个项目中创建您的业务实体,并由Linq-Sql类构成它们。
我认为Scott和Co.至少会将数据模型从表示层分离出来。我们都知道分离关注点的好处,但他们在MVC应用程序中保留数据模型的方式让我感到困惑。
对于更多层次的方法,还有什么建议吗?
https://stackoverflow.com/questions/766212
复制相似问题