C# ASP.NET MVC(域模型、存储库、Fluent、服务-我的项目结构)
在我的ASP.NET MVC web应用程序中,我有:C# ASP.NET MVC(域模型、存储库、Fluent、服务-我的项目结构),c#,.net,asp.net-mvc,dependencies,project-structure,C#,.net,Asp.net Mvc,Dependencies,Project Structure,在我的ASP.NET MVC web应用程序中,我有: 域模型,由LINQ到SQL创建 存储库,例如 UserRepository和OrderRepository IQueryable Fluent作为IQueryable扩展方法,例如 public IQueryable GetNewOrders(此IQueryable) 服务,例如 UserService和OrderService 实用程序类和扩展方法,例如 CryptoUtility(进行散列等)和字符串等扩展 每个MVC视图专用的视图模
- 域模型,由LINQ到SQL创建
- 存储库,例如
和UserRepository
OrderRepository
- IQueryable Fluent作为IQueryable扩展方法,例如
public IQueryable GetNewOrders(此IQueryable)
- 服务,例如
和UserService
OrderService
- 实用程序类和扩展方法,例如
(进行散列等)和字符串等扩展CryptoUtility
- 每个MVC视图专用的视图模型
- ASP.NET MVC项目本身(控制器、视图)
感谢您以简洁的方式组织这些内容,特别是哪一层应该取决于什么&装配组织。谢谢大家! 你可能想看看他们是如何组织事情的。它使用NHibernate,并且他们的回购协议有点直接与他们联系在一起,所以你需要对其进行修改。有几个不同的项目确实对此进行了更详细的说明(但请注意,要真正理解所有不同部分是如何协同工作的,还需要一些努力)
- 使用
- 罗布·康纳利酒店
> trunk
+ build (build scripts)
+ lib (external libraries)
> src (source code)
>> Organization.App (solution name)
>> Organization.App.Core (code library)
+ Config
> Domain
> Model
> Persistence
> Queries
> Services
> Persistence
> Services
>> Organization.App.Web (mvc web app)
> Assets
+ Images
+ Scripts
+ Stylesheets
+ Controllers
+ Views
+ ViewModels
这是基本的想法。web应用程序引用了我们的存储库/工作单元的域实体的核心应用程序。查看类似的示例。这其中最重要的一点是,我们能够将新的“UI”项目类型添加到同一个解决方案中,并按照预期重用我们的核心项目。例如控制台应用程序或第二个web应用程序,或您需要的任何应用程序。您将服务放在哪里?在核心项目中?你可以。我喜欢这样做,以将我们需要构建的DLL数量保持在最低限度。但你可以把它放在一个单独的项目中。我为你把它加到树上了。我们还有域服务的概念,因此这些服务将放在域文件夹/命名空间下。不过,这将是一项仅适用于域实体的服务。您在项目下看到的服务文件夹将是一个“应用程序”服务,因为它可能已注入存储库以及其他应用程序服务来完成工作。视情况而定。:)看起来fsu-isys-489-spring-09-group-2已被拆除。我找不到它去了哪里。另外,域下的持久性和服务与核心项目根下的持久性和服务有什么区别?CodeCampServer就是一个很好的例子-