基于DDD的.NET项目搭建

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于DDD的.NET项目搭建相关的知识,希望对你有一定的参考价值。

  第一次写博客有点小激动,废话不多说先上图:

                技术分享

  1. 01_Client:存放UI相关的项目,比如ASP.NET MVC或者相关的Web Model及View Model项目。
  2. 02_Hosting:存放与Service相关的项目,可以是Direct Service,Remoting Service,Web Service,WCF Service或者Web API Service 。
  3. 03_Domain:业务逻辑相关的所有实体以及操作(根据oo的思想设计类以及类之间的关系)。
  4. 04_Infrastructure:非业务方面的功能框架 (Common,AOP, IOC,Logging,Encryption,Scheduler)。
  5. 05_Database:数据库项目(包含所有数据库脚本,方便开发,部署以及维护)。
  6. 06_Tests:所有测试项目(数据访问测试,框架测试,业务逻辑测试,服务测试以及View Model测试)。
  7. 07_ReferenceLibs:项目相关的外部引用。
  8. 08_Tools:一些简单的工具如Nunit等,方便开发,测试以及部署。
  9. 09_Documents:存放项目相关文档、数据字典、接口API等

  在业务领域层中分为model,repository,service三层,每一层之前使用接口进行交互,使用spring.net中IOC功能来动态注入接口的实现类,从而实现层次之间的解耦。

  model层:使用entity framework框架定义不同数据库的数据库上下文与表对应关系,与定义业务实体类

  repository层:通过调用model层接口实现各种业务实体类的增删改查等功能。

  service层:主要处理业务逻辑,并调用repository层接口对数据进行操作

以上是关于基于DDD的.NET项目搭建的主要内容,如果未能解决你的问题,请参考以下文章

如何在ASP.NET 5上搭建基于TypeScript的Angular2项目

领域驱动(DDD)之我见,基于Golang实现

ABP项目学习目录

用MVC5+EF6+WebApi 做一个小功能 项目搭建

.NET CORE开源 DDD微服务 支持 多租户 单点登录 多级缓存自动任务分布式日志授权和鉴权 网关 注册与发现 系统架构 docker部署

AngularJs + WebApi + EF + SqlServer 一步一步搭建项目