总听.NETer羡慕Java有SSM框架,其实.NET也有ABP,极度优秀的开源应用程序框架,支持.NET Framework和.NET Core。

羡慕Java有SpringCloud,其实.NET也有ABP.vNext,由ABP团队全新打造的.NET Core+微服务架构开源框架,获得众多.NET大佬的推崇,也有很多企业招聘明确要求ABP了,你get了吗?

本文为.NET Core下ABP框架篇(干货长文),包括ABP介绍,核心内容,以及ABP实战,最后还有彩蛋哟!ABP.vNext门槛较高,下一篇见!

ABP介绍

ABP是ASP.NET Boilerplate的简称,是一个开源且文档友好的应用程序框架,还提供了基于领域驱动设计(DDD)的体系结构模型。

初次了解ABP框架,就被惊艳到了,基本上是.NET 领域架构的集大成者,几乎囊括了我们.NET领域的各种技术,支持.NET Framework和.NET Core双平台。

ABP官方网站:http://www.aspnetboilerplate.com,有详细的案例和文档说明(学习福音)。

GitHub源码:https://github.com/aspnetboilerplate,网址可以下载整个基础的框架内容,以及相关的样板案例代码。

笔者使用ABP框架有好几年了,下面给大家捋一捋ABP的核心内容,一方面让大家看看ABP能为你带来什么,大家在用的时候也能有个方向。

ABP核心内容

ABP框架提供的开发必备内容:

依赖注入,ABP用的是 Castle windsor 来实现依赖注入,也支持扩展autofac;

Repository仓储模式,支持Entity Framework、NHibernate、MangoDB、内存数据库等;

身份验证与授权管理,可以使用声明特性的方式对用户是否登录,或者接口的权限进行验证,细粒度完成各个接口的调用权限设置;

数据有效性验证,ABP可以根据属性的信息对属性的有效性进行校验;

审计日志记录,记录对每个接口的调用记录,以及对记录的创建、修改、删除人员进行记录等处理;

Unit Of Work工作单元模式,为应用层和仓储层的方法自动实现数据库事务;

除了上述的还有这些:

异常处理,有一整套比较完善的流程处理操作,可以很方便的对异常进行进行记录和传递;

日志记录,可以利用Log4Net进行常规的日志记录,方便我们跟踪程序处理信息和错误信息;

多语言/本地化支持,ABP框架对多语言的处理也是比较友好的;

Auto Mapping自动映射,来实现域对象和DTO对象隔离和数据绑定;

动态Web API层,一个很酷的应用,自动生成服务而不需要WebApi控制器,非常方便;

动态JavaScript的AJax代理处理,自动创建Javascript 的代理层来更方便使用WebApi。

ABP框架提供的一些特别内容:

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

软删除支持,继承相应的基类或实现相应接口,会自动实现软删除;

系统设置存取管理,系统级、租户级、用户级,作用范围自动管理;

EventBus实现领域事件(Domain Events)

插件化模块处理,支持模块拆分以及模块的依赖关系等

ABP框架主要还是基于领域驱动的理念来构建整个架构的,其中领域驱动包含的概念有域对象Entities、仓储对象Repositories、域服务接口层Domain Services、域事件Domain Events、应用服务接口Application Services、数据传输对象DTO等。对于很多没有用过ABP的小伙伴儿来说,上手还是很懵的。

下面给大家准备了为期3天的《ABP跨平台电商实战》专题训练营,扫码免费学习,搞定ABP实战!

ABP跨平台电商实战

Day1

Asp.Net Core接入ABP框架,理解DDD领域驱动设计,解读ABP项目结构,基于CodeFirst模式完成数据初始化,动态API提供数据管理。

Day2

搭建Vue+动态Core WebApi前后分离架构,完成商品页加载,基于Axios数据交互,手写搜索排序等核心功能实现。

Day3

继续商品详情页核心功能实现:多属性选择筛选、数量自动监听、购物车功能等,动态API原理解剖和调优,前端-后端-数据库一体化打通。

彩蛋-送福利

ABP框架是.NET技术的集大成者,里面整合了非常多的东西,要完成ABP跨平台实战,你还需要以下预习资料,扫码自取,手快有手慢无!(由于领取人数众多,添加微信:18672997769 也可

微软MVP组建的.Net社区

你加入了吗?

微软MVP:Eleven组建

国内首屈一指的.Net活跃社区

完整配套的学习资料

最新最热的技术文章

社区内优质岗位直推

全部免费奉送给大家

优质内容持续更新中

戳以下文章立即获取

????????????

禁止外传!社区内部VIP干货资料自取

(课程视频+面试题+技术专刊+岗位内推)

ABP快速开发一个.NET Core电商平台相关推荐

  1. 微信罕见出手,再造一个万能的电商平台!

    Python实战社群 Java实战社群 长按识别下方二维码,按需求添加 扫码关注添加客服 进Python社群▲ 扫码关注添加客服 进Java社群▲ 作者:电商君 来源:电商报(ID:kandiansh ...

  2. 电商创业项目:如何打造一个成功的电商平台

    随着互联网的飞速发展,电商在近几年已经成为了市场上的一股重要力量.越来越多的人选择通过电商平台来进行购物和出售,这也让电商创业项目成为了一项备受关注的商业领域.在本文中,我们将会探讨如何打造一个成功的 ...

  3. 一个低成本构建电商平台的方案

    "私域流量"是近年来互联网电商的热词之一,原因是电商平台获取公域流量的价格已经明显上升,市场开始出现一种新需求:"不想每次获客都要重新付费". "私域 ...

  4. 如何快速对接快递模块之电商平台

    随着拼多多的异军突起,越来越多的电商平台冒出,尤其是社交电商平台,各大企业纷纷布局,似有当年百团大战的味道. 自建电商平台,快递模块是其中非常重要的一环,用户在平台购物下单付款后,平台最需要考虑的是如 ...

  5. 手把手教您搭建一个跨境电商平台

    1 跨境电商网站开发 通过进行前期的调研分析,为企业搭建跨境电商商城平台,多渠道布局(PC.微信.app.小程序),实现数据一体化统一管理.跨境电商商城平台适用自营和招商入驻模式,可丰富产品品类,甄选 ...

  6. 初识javaWeb:纯JSP+CSS+JS构建一个简单的电商平台

    github地址:https://github.com/yaodebian/GoGoLe 初识java web,想在后端用java有一技之长.注:以下仅是自己的一个程序记录. 首先java web的动 ...

  7. 基于SSM框架开发生鲜水果蔬菜电商平台系统.rar(含源码及数据库文件)

    基于SSM框架开发,可用于练手,学习开发使用,尤其适合毕业设计,主要功能,商品列表.商品详细页.购物车.登录.注册.商品收藏.订单列表等主要功能.直接用idea或eclipse开发工具,可直接打开项目 ...

  8. springboot+特色农产品电商平台 毕业设计-附源码211515

    摘  要 随着科学技术的飞速发展,各行各业都在努力与现代先进技术接轨,通过科技手段提高自身的优势:对于特色农产品电商平台  当然也不能排除在外,随着网络技术的不断成熟,带动了特色农产品电商平台,它彻底 ...

  9. 基于springboot特色农产品电商平台毕业设计-附源码211515

    摘  要 随着科学技术的飞速发展,各行各业都在努力与现代先进技术接轨,通过科技手段提高自身的优势:对于特色农产品电商平台  当然也不能排除在外,随着网络技术的不断成熟,带动了特色农产品电商平台,它彻底 ...

最新文章

  1. LeetCode中等题之最简分数
  2. boost.asio系列——socket编程
  3. phpmyadmin不允许一个表创建多个主键的解决办法
  4. Handlebars模板库浅析
  5. Android开发之fragment传递参数的两种方法
  6. Android工具HierarchyViewer 代码导读(3) -- 后台代码
  7. 面试精讲之面试考点及大厂真题 - 分布式专栏 05 公司使用什么RPC框架,聊聊你理解的RPC原理
  8. python解析dom,关于Python解析xml dom的简单应用
  9. java生命游戏_大神们 急求一个生命游戏的java代码 谢谢各路大神!
  10. Tomcat各版本说明
  11. java带界面的代码_求一个java swing带界面的万年历代码
  12. C语言程序设计实验报告——实验六
  13. bert中的cls和sep等等
  14. Excel图表:随心所欲模拟坐标轴
  15. 第七章:Paging添加header和footer
  16. 双机热备(双主模式)——实现数据库的高可用
  17. MAC电脑 使用VMware中的虚拟机连接外网
  18. MATLAB基础篇——数值分析篇
  19. matlab 王家文,基于matlab的交通标志自动识别系统
  20. 针对付费的百度文库用冰点_9个针对开发人员的付费技术写作程序

热门文章

  1. [asp.net mvc 奇淫巧技] 04 - 你真的会用Action的模型绑定吗?
  2. 初识Spark2.0之Spark SQL
  3. SharePoint 2010 master page 控件介绍(5):其他
  4. 第2课:关闭被黑客扫描的端口
  5. 设计模式 - Mediator
  6. Android中常用到的权限
  7. 浙大月赛C题(2012/8)Cinema in Akiba(线段树)
  8. 发送不同类型的ActivityFeed
  9. 什么是Adobe Lightroom,我需要它吗?
  10. html5结构与表现分离原则,网页简单布局之结构与表现原则分享