c#MVC - 文件夹结构 - 放置类的位置?

时间:2009-09-16 14:06:12

标签: c# asp.net-mvc model-view-controller directory-structure

在asp / net MVC中,项目分为模型,视图和控制器。好到目前为止。

假设我有一个班级'人',人员控制器使用人员模型填充数据。

最好把我的person.cs课程放在哪里?在控制器或模型文件夹中?你做什么的?

由于

3 个答案:

答案 0 :(得分:5)

我会将Person视为模型并将其放在Models文件夹中。这是我保留视图模型的地方。业务模型通常保存在一个单独的数据项目中 - 我喜欢我的数据层是自包含的,所以如果我愿意,我可以在其他项目中使用它。您可能需要考虑为其他类型的类创建单独的类库 - 扩展方法,帮助程序等,这些类不适合控制器或模型的类别。

答案 1 :(得分:5)

我在解决方案中创建另一个类库项目,定义我的类,然后在我的ASP.Net MVC应用程序中引用我的库。

WebApp Solution
|-MyMVCProject
  |-Models
  |-Controllers
  |-Views
|-MyMVCProject.Domain (you'd put your models here)
  |-Person.cs
|-MyMVCProject.Services (you'd put entity services here)

答案 2 :(得分:1)

目前在相当大的项目中工作,我将我的类划分为不同的类库项目,这些项目名为Repository(用于数据访问接口和业务数据类),Utils(用于实用程序类)和DataAccess(存储库接口实现)。在那些我将它们划分为子目录(或者我应该说命名空间)然后使用Resharper来强制执行这些命名空间。