基于DDD的.NET开发框架 - ABP初探
全称:Asp.Net Boilerplate
官网地址:https://aspnetboilerplate.com/
GitHub地址:https://github.com/aspnetboilerplate/aspnetboilerplate
中文文档翻译地址:http://www.cnblogs.com/farb/p/ABPTheory.html
http://www.cnblogs.com/mienreal/p/4528470.html
Github中文地址: https://github.com/ABPFrameWorkGroup
1、服务端
基于最新的.NET技术 (目前是ASP.NET MVC 5、Web API 2、C# 5.0,在ASP.NET 5正式发布后会升级)
实现领域驱动设计(实体、仓储、领域服务、领域事件、应用服务、数据传输对象,工作单元等)
实现分层体系结构(领域层,应用层,展现层和基础设施层)
提供了一个基础架构来开发可重用可配置的模块
集成一些最流行的开源框架/库,也许有些是你正在使用的。
提供了一个基础架构让我们很方便地使用依赖注入(使用Castle Windsor作为依赖注入的容器,为什么没有用autofac??)
提供Repository仓储模式支持不同的ORM(已实现Entity Framework 、NHibernate、MangoDb和内存数据库)
支持并实现数据库迁移(EF 的 Code first)
模块化开发(每个模块有独立的EF DbContext,可单独指定数据库)
包括一个简单的和灵活的多语言/本地化系统
包括一个 EventBus来实现服务器端全局的领域事件
统一的异常处理(应用层几乎不需要处理自己写异常处理代码)
数据有效性验证(Asp.NET MVC只能做到Action方法的参数验证,ABP实现了Application层方法的参数有效性验证)
通过Application Services自动创建Web Api层(不需要写ApiController层了)
提供基类和帮助类让我们方便地实现一些常见的任务
使用“约定优于配置原则”
2、客户端
Bootstrap、Less、AngularJS、jQuery、Modernizr和其他js库: jquery.validate、jQuery.form、jQuery.blockUI、json2
为单页面应用程序(angularjs、Durandaljs)和多页面应用程序(Bootstrap+Jquery)提供了项目模板。
自动创建JavaScript 的代理层来更方便使用Web Api
封装一些javascript 函数,更方便地使用ajax、消息框、通知组件、忙状态的遮罩层等等
3、zero模块
身份验证与授权管理(通过ASP.NET Identity实现的)
用户&角色管理
系统设置存取管理(系统级、租户级、用户级,作用范围自动管理)
审计日志(自动记录每一次接口的调用者和参数)
以上摘自阳铭系列教程
摘选自:http://blog.csdn.net/orichisonic/article/details/51459691
转载于:https://www.cnblogs.com/cheney123456/p/7126398.html
基于DDD的.NET开发框架 - ABP初探相关推荐
- 基于DDD的.NET开发框架 - ABP领域服务
返回ABP系列 ABP是"ASP.NET Boilerplate Project (ASP.NET样板项目)"的简称. ASP.NET Boilerplate是一个用最佳实践和流行 ...
- 基于DDD的.NET开发框架 - ABP依赖注入
返回ABP系列 ABP是"ASP.NET Boilerplate Project (ASP.NET样板项目)"的简称. ASP.NET Boilerplate是一个用最佳实践和流行 ...
- 基于DDD的.NET开发框架 - ABP缓存Caching实现
返回ABP系列 ABP是"ASP.NET Boilerplate Project (ASP.NET样板项目)"的简称. ASP.NET Boilerplate是一个用最佳实践和流行 ...
- 基于DDD的.NET开发框架 - ABP模块设计
返回ABP系列 ABP是"ASP.NET Boilerplate Project (ASP.NET样板项目)"的简称. ASP.NET Boilerplate是一个用最佳实践和流行 ...
- 基于DDD的.NET开发框架 - ABP工作单元(Unit of Work)
返回ABP系列 ABP是"ASP.NET Boilerplate Project (ASP.NET样板项目)"的简称. ASP.NET Boilerplate是一个用最佳实践和流行 ...
- 基于DDD的现代ASP.NET开发框架--ABP系列之1、ABP总体介绍
点这里进入ABP系列文章总目录 基于DDD的现代ASP.NET开发框架--ABP系列之1.ABP总体介绍 ABP是"ASP.NET Boilerplate Project (ASP.NET样 ...
- 基于DDD的现代ASP.NET开发框架
基于DDD的现代ASP.NET开发框架--ABP系列之1.目录和总体介绍 时间 2015-05-25 17:49:00 博客园-原创精华区 原文 http://www.cnblogs.com/mi ...
- 从壹开始微服务 [ DDD ] 之一 ║ D3模式设计初探 与 我的计划书
缘起 哈喽大家周四好!又是开心的一天,时间过的真快,我们的 <从壹开始 .net core 2.1 + vue 2.5 >前后端分离系列共 34 篇已经完结了,当然以后肯定还会有更新和修改 ...
- 基于实战开发垂直搜索引擎_基于DDD的微服务设计和开发实战
作者:欧创新.邓頔.文艺 你是否还在为微服务应该拆多小而争论不休?到底如何才能设计出收放自如的微服务?怎样才能保证业务领域模型与代码模型的一致性?或许本文能帮你找到答案. 本文是基于 DDD 的微服务 ...
最新文章
- Java监听器用法(三):外部类监听器
- linux c程序中获取shell脚本输出
- mysql 数据如何存储,MySQL如何存储数据
- c语言实现的sin cos查找表_考研数据结构之C语言实现顺序表的增、删、查(粘贴即可运行)...
- 非printf形式的十六进制和二进制打印(雅虎面试题)
- linux上搭载was应用上传中文文件,受支持的Linux操作系统和WAS ND 9.0安装部署文档的资料说明...
- 金融综合(网课+读书笔记)
- 记录:编译opencv-4.1.0、opencv_contrib-4.1.0、dense_flow过程
- 键盘输入字符串统计_C语言 | 统计选票结果的程序
- read()/write()的生命旅程——前言与目录
- 单片机作业1_为OLED制作汉字字库_第1部分
- Linux系统-进程概念
- MLP手写数字识别实现
- vnc远程连接,5步实现vnc远程连接
- 苹果手机更改照片大小kb_iPhone调整照片大小方法教程 无需第三方软件
- 数据结构:顺序表的就地逆置
- oracle请求http接口
- Android系统apps之Setting的修改和设置
- CSDN文章编辑技巧
- grunt 压缩 html,如何使用 grunt 插件压缩合并 js ?减少页面请求数的秘诀
热门文章
- 修改CentOS7网卡名称为传统名称eth0格式(20170711更新)
- spring 中读取properties 文件
- Android中的防缓冲区溢出技术
- 使用Solr构建企业级的全文检索(三)---------Schema定义
- ORA-600 [kddummy_blkchk] [18038] 一例
- 遇到困难挫折也不要悲观:每个人生来就是冠军(转)
- 已知bug列表——Solidity中文文档(12)
- 【思维导图】redis
- Coolblue的持续部署
- Mindmanager 甘特图杠上Mindmanager 鱼骨图