ABP快速开发一个.NET Core电商平台
总听.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电商平台相关推荐
- 微信罕见出手,再造一个万能的电商平台!
Python实战社群 Java实战社群 长按识别下方二维码,按需求添加 扫码关注添加客服 进Python社群▲ 扫码关注添加客服 进Java社群▲ 作者:电商君 来源:电商报(ID:kandiansh ...
- 电商创业项目:如何打造一个成功的电商平台
随着互联网的飞速发展,电商在近几年已经成为了市场上的一股重要力量.越来越多的人选择通过电商平台来进行购物和出售,这也让电商创业项目成为了一项备受关注的商业领域.在本文中,我们将会探讨如何打造一个成功的 ...
- 一个低成本构建电商平台的方案
"私域流量"是近年来互联网电商的热词之一,原因是电商平台获取公域流量的价格已经明显上升,市场开始出现一种新需求:"不想每次获客都要重新付费". "私域 ...
- 如何快速对接快递模块之电商平台
随着拼多多的异军突起,越来越多的电商平台冒出,尤其是社交电商平台,各大企业纷纷布局,似有当年百团大战的味道. 自建电商平台,快递模块是其中非常重要的一环,用户在平台购物下单付款后,平台最需要考虑的是如 ...
- 手把手教您搭建一个跨境电商平台
1 跨境电商网站开发 通过进行前期的调研分析,为企业搭建跨境电商商城平台,多渠道布局(PC.微信.app.小程序),实现数据一体化统一管理.跨境电商商城平台适用自营和招商入驻模式,可丰富产品品类,甄选 ...
- 初识javaWeb:纯JSP+CSS+JS构建一个简单的电商平台
github地址:https://github.com/yaodebian/GoGoLe 初识java web,想在后端用java有一技之长.注:以下仅是自己的一个程序记录. 首先java web的动 ...
- 基于SSM框架开发生鲜水果蔬菜电商平台系统.rar(含源码及数据库文件)
基于SSM框架开发,可用于练手,学习开发使用,尤其适合毕业设计,主要功能,商品列表.商品详细页.购物车.登录.注册.商品收藏.订单列表等主要功能.直接用idea或eclipse开发工具,可直接打开项目 ...
- springboot+特色农产品电商平台 毕业设计-附源码211515
摘 要 随着科学技术的飞速发展,各行各业都在努力与现代先进技术接轨,通过科技手段提高自身的优势:对于特色农产品电商平台 当然也不能排除在外,随着网络技术的不断成熟,带动了特色农产品电商平台,它彻底 ...
- 基于springboot特色农产品电商平台毕业设计-附源码211515
摘 要 随着科学技术的飞速发展,各行各业都在努力与现代先进技术接轨,通过科技手段提高自身的优势:对于特色农产品电商平台 当然也不能排除在外,随着网络技术的不断成熟,带动了特色农产品电商平台,它彻底 ...
最新文章
- LeetCode中等题之最简分数
- boost.asio系列——socket编程
- phpmyadmin不允许一个表创建多个主键的解决办法
- Handlebars模板库浅析
- Android开发之fragment传递参数的两种方法
- Android工具HierarchyViewer 代码导读(3) -- 后台代码
- 面试精讲之面试考点及大厂真题 - 分布式专栏 05 公司使用什么RPC框架,聊聊你理解的RPC原理
- python解析dom,关于Python解析xml dom的简单应用
- java生命游戏_大神们 急求一个生命游戏的java代码 谢谢各路大神!
- Tomcat各版本说明
- java带界面的代码_求一个java swing带界面的万年历代码
- C语言程序设计实验报告——实验六
- bert中的cls和sep等等
- Excel图表:随心所欲模拟坐标轴
- 第七章:Paging添加header和footer
- 双机热备(双主模式)——实现数据库的高可用
- MAC电脑 使用VMware中的虚拟机连接外网
- MATLAB基础篇——数值分析篇
- matlab 王家文,基于matlab的交通标志自动识别系统
- 针对付费的百度文库用冰点_9个针对开发人员的付费技术写作程序
热门文章
- [asp.net mvc 奇淫巧技] 04 - 你真的会用Action的模型绑定吗?
- 初识Spark2.0之Spark SQL
- SharePoint 2010 master page 控件介绍(5):其他
- 第2课:关闭被黑客扫描的端口
- 设计模式 - Mediator
- Android中常用到的权限
- 浙大月赛C题(2012/8)Cinema in Akiba(线段树)
- 发送不同类型的ActivityFeed
- 什么是Adobe Lightroom,我需要它吗?
- html5结构与表现分离原则,网页简单布局之结构与表现原则分享