ABP开发教程(3)

2019-01-26 16:14

ABP Framework入门开发指南

7.8.1应用服务及数据传输对象 ..................................................................................... 146 7.8.2 DTO验证 ............................................................................................................. 150 7.8.3动态Web API控制器 ........................................................................................... 151 7.9表现层 ............................................................................................................................. 152

7.9.1单页应用 .............................................................................................................. 153 7.9.2视图和视图模型 ................................................................................................... 153 7.9.3本地化 .................................................................................................................. 161 7.9.4 JavaScript API ..................................................................................................... 163 7.10更多 ............................................................................................................................... 165

7.10.1模块系统 ............................................................................................................ 165 7.10.2依赖注入和约定 ................................................................................................. 166 7.11结论 ............................................................................................................................... 166

8 ABP实例二:单页面网站应用程序 .......................................................... 168

8.1简介 ................................................................................................................................. 168 8.2基于Abp创建应用程序 ................................................................................................... 169 8.3创建实体 .......................................................................................................................... 170 8.4创建DbContext ............................................................................................................... 171 8.5创建Database Migrations ............................................................................................... 172 8.6定义仓储 .......................................................................................................................... 174 8.7实现仓储 .......................................................................................................................... 175 8.8构建应用程序服务 ........................................................................................................... 176 8.9验证 ................................................................................................................................. 180

ABP框架中国小组(ABPFrameWorkGroup)版权所有 | 版本:1.0viii

ABP Framework入门开发指南

8.10异常处理 ........................................................................................................................ 181 8.11构建Web API 服务 ....................................................................................................... 182 8.12开发单页面应用(SPA) ............................................................................................... 182 8.13本地化 ........................................................................................................................... 187

ABP框架中国小组(ABPFrameWorkGroup)版权所有 | 版本:1.0ix

ABP Framework入门开发指南

1 ABP总体介绍

1.1 入门介绍

ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)”的简称。

ASP.NET Boilerplate是一个用最佳实践和流行技术开发现代WEB应用程序的新起点,它旨在成为一个通用的WEB应用程序基础框架和项目模板。

ASP.NET Boilerplate 基于DDD的经典分层架构思想,实现了众多DDD的概念(但没有实现所有DDD的概念)。

ABP的官方网站:http://www.aspnetboilerplate.com

ABP在Github上的开源项目:https://github.com/aspnetboilerplate

ABP框架于2014年5月4日首次在Github开源,截止到2015年5月25日,总共进行了1271次代码提交,49次版本发布,现在的版本号是0.6.1.1。

ABP框架中国小组(ABPFrameWorkGroup)版权所有 | 版本:1.01

ABP Framework入门开发指南

1.1.1 ABP采用了以下技术

服务器端:

? ASP.NET MVC 5、Web API 2、C# 5.0

? DDD领域驱动设计(Entities、Repositories、Domain Services、Domain Events、

Application Services、DTOs等) ? Castle windsor (依赖注入容器)

? Entity Framework 6 \\ NHibernate,数据迁移 ? Log4Net(日志记录)

? AutoMapper(实现Dto类与实体类的双向自动转换)

客户端:

? Bootstrap ? Less ? AngularJs ? jQuery ? Modernizr

? 其他JS库: jQuery.validate、jQuery.form、jQuery.blockUI、json2 1.1.2 ABP框架已实现了以下特性

? 多语言/本地化支持

? 多租户支持(每个租户的数据自动隔离,业务模块开发者不需要在保存和查询数时写

相应代码)

? 软删除支持(继承相应的基类或实现相应接口,会自动实现软删除) ? 统一的异常处理(应用层几乎不需要处理自己写异常处理代码)

? 数据有效性验证(Asp.NET MVC只能做到Action方法的参数验证,ABP实现了

Application层方法的参数有效性验证) ? 日志记录(自动记录程序异常)

ABP框架中国小组(ABPFrameWorkGroup)版权所有 | 版本:1.02

ABP Framework入门开发指南

? 模块化开发(每个模块有独立的EF DbContext,可单独指定数据库)

? Repository仓储模式(已实现了Entity Framework、NHibernate、MangoDB、内存数

据库)

? Unit Of Work工作单元模式(为应用层和仓储层的方法自动实现数据库事务) ? EventBus实现领域事件(Domain Events) ? DLL嵌入资源管理

? 通过Application Services自动创建Web Api层(不需要写ApiController层了) ? 自动创建Javascript 的代理层来更方便使用Web Api

? 封装一些Javascript 函数,更方便地使用ajax、消息框、通知组件、忙状态的遮罩层 ? “Zero”的模块,实现了以下功能:

身份验证与授权管理(通过ASP.NET Identity实现的) ? 用户&角色管理

? 系统设置存取管理(系统级、租户级、用户级,作用范围自动管理) ? 审计日志(自动记录每一次接口的调用者和参数)

我在其他项目中看到的很多优秀设计,在ABP项目中也已存在,而且可能实现得更好。ABP框架的代码,都通过xUnit进行了单元测试。作者一直在用ABP框架开发他们的实际项目,从Github和他官方论坛上的信息可以看到,有很多国外的开发者在将ABP用作生产项目的基础框架。如果需要直接使用ABP组件,可以通过Nuget安装(在VS的Nuget包管理界面搜索ABP)。

为了更好地将ABP适用于自己的项目,我对ABP的源码做了一些修改后使用的,没有直接使用ABP组件。

我希望更多国内的架构师能关注ABP这个项目,也许这其中有能帮助到你的地方,也许有你的参与,这个项目可以发展得更好。

今天只是作了一个大概介绍,希望有更多的朋友能去阅读源代码,然后参与讨论。

ABP框架中国小组(ABPFrameWorkGroup)版权所有 | 版本:1.03


ABP开发教程(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2016年黑龙江造价工程师土建计量:混凝土搅拌考试试题

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: