1 Star 0 Fork 47

陈雄 / ChristDDD

forked from 老张的哲学 / ChristDDD 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

一个基于 DDD 领域驱动设计 + CQRS 命令查询职责分离 的 .net core 框架,完全开源,并且有博客教程,地址在下边。


给个星星! ⭐️

如果你喜欢这个项目或者它帮助你, 请给 Star~(辛苦星咯)


三大平台同步直播

博客园:https://www.cnblogs.com/laozhang-is-phi/p/9806335.html

简 书:https://www.jianshu.com/c/fe7dd7fc5372

码云:https://gitee.com/laozhangIsPhi/ChristDDD



目录:



主要的流程图,在下边的图中可以体现:

流程图1

流程图2

流程图3

系统环境

  windows 10、SQL server 2012、Visual Studio 2017、Windows Server 2008 R2、Linux Ubuntu、

开发环境

  Visual Studio 15.3+、.NET Core SDK 2.0+、

1、知识点(补充中)

    ASP.NET Core 2.1.2  👉基本框架
    ASP.NET MVC Core  👉实现mvc web页面
    ASP.NET WebApi Core  👉实现 api 接口
    ASP.NET Identity Core  👉身份验证
    Entity Framework Core 2.0  👉实现ORM数据持久化
    Dapper (待定)
    .NET Core 原生 DI  👉实现依赖注入
    AOP  👉面向切面
    Autofact(待定)IoC
    AutoMapper  👉实现Dtos
    FluentValidator验证
    Swagger UI  👉实现接口文档展示
    MediatR  👉基于内存级别的消息发布订阅
    Azure  👉云服务发布

2、特性(补充中)

    领域驱动设计(Domain Driven Design (Layers and Domain Model Pattern)
    命令查询职责分离(CQRS:Command Query Responsibility Segregation)
    领域通知 (Domain Notification)
    领域驱动 (Domain Events)
    事件驱动架构 (EDA)
    事件回溯 (Event Sourcing)
    最终一致性 (Eventually Consistent)
    工作单元模式 (Unit of Work )
    泛型仓储 (Repository and Generic Repository)

编者按: 1、本项目我是借鉴了 https://github.com/EduardoPires/EquinoxProject 来讲解的,请支持原作者!因为他没有文档,所以我就写了这个系列。 2、可能你会说我是抄袭,但是我自己写的时候,结构不是这样的,我当时是按照下边写的(如果你和我下边的分层一样,那就证明我不是瞎说的了):

应用层:除了Service和IService、DTO、还有使用 CQRS 方法的查询、接受的命令,事件驱动的通信(集成事件),但是没有业务规则;

领域(模型)层:这里主要放的是领域实体、值对象、聚合和事件模型、Bus等主要都是模型,非贫血;

基础层:就是ORM的持久化相关;

U I 层:显示页面;

不过我写的时候感觉各层之间凌乱,不适合初学者学习,所以就想着要改变一下,找一个清晰明了的,对比了Git上的各种大神结构,偶然发现了EduardoPires的代码,感觉很清晰,就按照他这个来了。 说白了,就是把CQRS读写分离和事件驱动全部放到领域层了,然后又提炼出来一个领域核心Doman.Core层。

MIT License Copyright (c) 2019 ansonzhang Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

ASP.NET Core 2.1 应用, 包含 DDD、CQRS、EDA 和事件回溯 展开 收起
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/coldco519/ChristDDD.git
git@gitee.com:coldco519/ChristDDD.git
coldco519
ChristDDD
ChristDDD
master

搜索帮助

14c37bed 8189591 565d56ea 8189591