作者:梁桐铭 博客: 微信公众号:角落的白板报

Slides:



Advertisements
Similar presentations
模板的使用 教育学 江西教育学院教育系 冯芳 2012 - 10. 第二章 教育学的产生和发展 第一节 教育学的研究对象和任务 第二节 教育学的产生与发展 第三节 学习教育学的意义与方法.
Advertisements

用 藥 安 全 用 藥 安 全 護 理 師 張 嘉 芬. 前 言 前 言 正確用藥的方法 藥袋上的秘辛 為了減少重大疾病或是醫療處理、 用藥不當的相關事件發生。
阿尔伯特亲王 阿尔伯特亲王纪念碑 维多利亚女王夫妇 维多利亚女王一家 建造水晶宫 水晶宫初建时的照片.
第一章 餐饮服务程序 学习目的: 掌握餐饮服务四个基本环节的内容 正确表述和运用各种餐饮形式的服务程序 熟悉并利用所学知识灵活机动地为不同需求的 客人提供服务.
一、老师申请题目,以下指导老 师操作。 1. 登录教务系统 web 端. 2. 点击 “ 毕业设计 ” 工具栏下拉菜单中的 “ 论文 _ 教师申请题目 ”
有教無類 因材施教 適性揚才 多元進路 優質銜接
抗菌药物合理用药指标 2011年11月24日.
梦想启航 ——大学生活与职业规划专题讲座.
河北保定外国语学校 高三家长会.
抗菌药物临床应用管理办法释译 重庆市医院感染控制中心 陈 萍.
以信息化带动教育现代化,打造教育的“南山质量”
个体税收征管政策讲解 浏阳市地方税务局.
封面 2015易驾考最新分享: 科目二考试方法秘诀 文章来源:易驾考官网.
基于行业的 企业技术创新信息保障体系研究 刘 华 博士 中国科学技术信息研究所.
第四讲 1949—1991年的中苏关系 及其经验教训.
“鼠标加水泥”的百货公司——武汉中百 朱巧巧 陆嘉怡 田泽宇.
合理控制索道游客流量 确保景区可持续发展 云南丽江玉龙雪山索道 陈加林 二0一五年十一月.
说网络技术专业 江苏联合职业技术学院徐州财经分院 王 磊.
千里挑一的“征途” ——浅谈中国“国考”热.
抗菌药物临床应用管理规定.
研修4组 学习简报(第3期) 主编:左文玲 2015年2月7日.
潘集小学英语班 学习简报(第5期) 主编:吴婷 2016年2月28日.
有效學習計劃簡介 (學前).
与领导、下级、同事的 沟通技巧.
潜能宇宙平衡法则 ——启动11.11天地人合新生命工程(分类系统) 凛然智慧(北京)教育咨询有限公司.
速收简历 速收简历移动APP项目 速收简历团队.
石家庄迅步网络科技有限公司 联系人:张会耀 电话:
失眠的饮食及调理 北京国济中医院
中餐烹調實習Ⅲ 第九章中國菜系介紹 林可薇 製作.
美学概论 主讲教师 孙建章 沈阳电大文法系.
第八章 网络课程的设计与开发.
新高考研究介绍 湖北省教育考试院项目研究组.
如东中专 学校文化课现状及提升举措的思考
钞坑安置区项目简介.
第3讲 时间管理.
续班指导.
高等教育出版社 工作汇报 化学化工分社 翟怡.
******班班级学习简报(第*期) 主编:*** ****年**月**日.
第十九课 南吕•一枝花 不 伏 老 关汉卿.
采购控制程序 2008年9月.
单位:十堰离退休职工服务中心 时间:2016年2月1日
中国家电企业如何打造全球化品牌 黄 辉.
校園霸凌事件處理、申復流程暨狀況模擬 林華杉教官 此範本可作為群組設定中簡報訓練教材的起始檔案。 章節
四川信托-汇誉10号集合资金信托计划.
《现代大学 英语》 说课程 公共课部 臧朝晖 益阳医学高等专科学校.
保大人还是保小孩 ---产房里的伦理学问题 小组成员 蔡婷 基础医学系 郭灵飞 基础医学系
超星尔雅 tsk.erya100.chaoxing.com 网络通识课程学习指导.
让快件更自由! 福州拓牛信息科技有限公司.
互联网时代班主任的挑战 万玮 2014年9月20日.
中药学 第十一章 祛风湿药.
形势与政策 2016年上.
幼儿园班务管理实践.
中 医 内 科 学 第一章 第一节 感冒.
中共江西省委党史研究室 从井冈山斗争中汲取信念的力量 沈谦芳 (江西省委党史研究室主任,博士、教授)
电气安全技术和管理 ——面对工厂管理者的电气安全管理 主讲人:林仿生.
第四节 存货 一、存货的分类 二、存货核算的主要内容 三、存货的确认条件 四、存货入账价值的确定 五、存货发出的计价 六、原材料
科學科 污染 空氣 成因 的 : 題目 及 減少空氣污染的方法 陳玉玲 (4) 姓名 : 去到目錄.
網路點名系統 致遠管理學院網路通訊學系 張逸中 2007/6/22.
鄉村尋根-農具篇.
An Introduce to NHibernate
ASP.NET 90分钟入门 第二课 王 翔.
作者:汤雪华 博客: DDD & ENODE 作者:汤雪华 博客:
YEOMAN安装 -- AngularJS
解放军医学图书馆ERMS电子资源管理系统工作汇报
交際障礙分組系統 大家好,關於我們的深碗計畫,交際障礙分組系統,是我們的主題。.
本章要点: 了解ASP.NET 4.5的基础.NET Framework。
序言 報告內容: 你對父母的感覺 你與父母的關係 你是否與父母同居 你與父母見面的時間 每天與父母的談話時間 與父母談話的內容 結論 感想.
“修身成材” 班级干部培训班 黑龙江大学党委学工部.
W3C标准网页制作 主讲教师:张 涛.
我會看年曆.
Presentation transcript:

作者:梁桐铭 博客:http://www.cnblogs.com/wer-ltm/ 微信公众号:角落的白板报 基于DDD的.NET开发框架-ABP介绍 作者:梁桐铭 博客:http://www.cnblogs.com/wer-ltm/ 微信公众号:角落的白板报 公众号

内容提要 ABP的总体介绍 ABP实现的功能特性 Module Zero 基于DDD的分层结构 ABP案例展示 ABP Code Generator(代码生成器)

ABP的总体介绍 ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)”的简称。 ABP框架于2014年5月4日首次在Github开源,截止到2017年4月7日,总共进行了3023次代码提交,124次版本发布,现在的版本号是2.0预览版。 ABP的定位,快速开发。

什么是ASP.NET Boilerplate? ASP.NET Boilerplate是一个用最佳实践和流行技术开发现代WEB应用程序的新起点,它旨在成为一个通用的WEB应用程序框架和项目模板。 ASP.NET Boilerplate 基于DDD的经典分层架构思想,实现了众多DDD的概念(但没有实现所有DDD的概念)。

什么是ASP.NET Boilerplate? 服务端 ASP.NET MVC和Web API。 实现域驱动设计(实体,存储库,领域服务,应用程序服务,DTO,Unif Of Work ...等) 实现分层架构(领域,应用程序,表示和基础结构层)。 提供一个基础设施,为大型项目开发可重用和可组合的模块,使其易于使用依赖注入(使用Castle Windsor作为DI容器)。 提供一个严格的模型和基类,以轻松使用对象相关映射(直接支持EntityFramework和NHibernate)。 支持和实现数据库迁移。 包括一个简单灵活的本地化系统。 包括服务器端全局领域域事件的EventBus。 管理异常处理和验证。 为应用程序服务创建动态Web API层。 提供基本和辅助类来实现一些常见任务。 使用约定优于配置原则。

什么是ASP.NET Boilerplate? 客户端 提供的项目模板为单页的应用程序(AngularJs)和多页应用。模板基于Bootstrap。 最常用的javascript库或者angular库 创建动态JavaScript代理以轻松调用应用程序服务(使用动态Web API图层)。 包括一些独特的任务API:如友好提示(SweetAlert),通知管理,blocking UI ,发送ajax请求

文档和开源地址 官方文档: http://www.aspnetboilerplate.com/Pages/Documents 群友文档:http://www.cnblogs.com/kid1412/p/5971838.html 新手教程: http://www.cnblogs.com/wer-ltm/p/5776069.html

EntityFramework Core集成 Nhibernate集成 领域层 实体 值对象 仓储 领域服务 规约管理 工作单元 领域事件 ABP实现的功能特性 展现层 Asp.Net MVC MVC控制器 MVC视图 异常处理 嵌入资源文件 本地化 菜单导航 嵌入资源 JavaScript API CSRF/XSRF保护 应用层 应用服务 数据传输对象(DTO) 验证数据传输对象 授权 功能(feature)管理 审计日志 Web API WebAPi控制器 动态WebApi层 Odata集成 SwaggerUI集成 ORM EntityFramework集成 EntityFramework Core集成 Nhibernate集成 领域层 实体 值对象 仓储 领域服务 规约管理 工作单元 领域事件 数据过滤 共用结构 依赖注入 Session管理 缓存机制 日志管理 键值管理 时间管理 后台服务 后台作业 Hangfire集成 Quartz集成 实时服务 通知系统 Signal集成

Module Zero ABP框架是可以独立服务于其他任何数据库的,并且尽可能的使用他们能够通用。因此也就没有实现有关储存数据的功能(如:审计日志、Session管理、授权) Module Zero实现了ASP.NET Boilerplate框架的所有基础概念,如租户管理(多租户),角色管理,用户管理,session,授权(权限管理),设置管理,语言管理,审计日志等等。 Microsoft ASP.NET Identity框架

ABP+ZERO=? 博客园阳铭

介绍github上的项目都是什么

基于DDD的分层结构-DDD简述 领域驱动设计(Domain-driven Design) 一种模型驱动的软件设计方式 以上来自汤雪华的博客

领域驱动设计的经典分层架构 用户界面/展现层 应用层 领域层 基础设施层 负责向用户展现信息以及解释用户命令。更细的方面来讲就是: 请求应用层以获取用户所需要展现的数据; 发送命令给应用层要求其执行某个用户命令; 应用层 很薄的一层,定义软件要完成的所有任务。对外为展现层提供各种应用功能(包括查询或命令),对内调用领域层(领域对象或领域服务)完成各种业务逻辑,应用层不包含业务逻辑。 领域层 负责表达业务概念,业务状态信息以及业务规则,领域模型处于这一层,是业务软件的核心。 基础设施层 本层为其他层提供通用的技术能力;提供了层间的通信;为领域层实现持久化机制;总之,基础设施层可以通过架构和框架来支持其他层的技术需求;

ABPZero的项目分层架构图(DDD) 图片来自阳铭

项目结构-案例项目结构

Thanks!