上效果图 来看一下操作流程: 一、分为.net Core 2.2 和 .net Core 3.0及以上 (一)、.net Core 2.2 1、在 EntityFrameworkCore中安装Nuget报: Microsoft.Extensions.Logging.Console 2、在XXXXEntityFrameworkModule增加 public static readonly LoggerFactory MyLoggerFactory
在企业中大型项目中,随着业务的不断拓展,项目发展到一定程度,需要寻求项目的各模块解耦,独立成为微服务。如何实现呢? 首先我们先来简单回顾一下Abp框架怎样实现(DDD)领域驱动设计的,Abp框架的全称是:Asp.Net Boilerplate Project(即Asp.Net 的样板项目),我们知道在领域驱动设计中,我们可以
※ 官网介绍: (一)Domain.Shared 项目包含常量,枚举和其他对象,这些对象实际上是领域层的一部分,但是解决方案中所有层/项目中都会使用到。 该项目不依赖解决方案中的其他项目,其他项目直接或间接依赖该项目。 (二)Domain 解决方案的领域层. 它主要包含 实体, 集合根, 领域服务,
说明 Abp vNext基础篇的文章还差一个单元测试模块就基本上完成了我争取10.1放假之前给大家赶稿出来,后面我们会开始进阶篇,开始拆一些东西,具体要做的事我会单独开一个文章来讲 缘起 本篇文章缘起于dyAbp大佬们在给夏琳儿(简称:小富婆)讲解技术的时候发起,因为多用户设计和用户扩展属性
1. API功能 功能: 根据商品名查询商品信息 2. 创建商品实体 AbpTraining.Core\Products\Product.cs using Abp.Domain.Entities.Auditing; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; namespace AbpTraining.Products
介绍 本章节来把接口的权限加一下 权限配置和使用 官方地址:https://docs.abp.io/en/abp/latest/Authorization 下面这种代码可能我们日常开发都写过,ASP.NET Core 提供的Authorize特性来帮我们做授权,但是BookStore_Author_Create策略,需要我们去手动声明。 Abp定义了一个叫Permiss
一、ABP的Profile有什么用? Profile用来编写AutoMapper的映射规则,在Profile类构造方法中编写的规则最后会配置到AutoMapper中,实现实体到DTO的自动映射。 二、代码浅析 1.ABP模板中,应用层的Module类有一个Initialize方法,该方法中用反射找到所有继承于Profile的类,并添加到映射配
介绍 本章节先来把上一章漏掉的上传文件处理下,然后实现Tag功能。 上传文件 上传文件其实不含在任何一个聚合中,它属于一个独立的辅助性功能,先把抽象接口定义一下,在Bcvp.Blog.Core.Application.Contracts层Blog内新建File文件夹。 一个是根据文件name获取文件,一个是创建文件,另外Bl
1. foreign key constraint failed 在TestDataBuilder 中已经加了IdentityUser,但测试Application的时候,还是会报错 TestDataBuilder private async Task AddUsers() { var adminUser = new IdentityUser(_guidGenerator.Create(), "administrat
ABP框架的数据访问底层是基于EFCore(Entity Framework Core)的,是微软标志性且成熟的ORM,因此它本身是支持多种主流数据库MySQL,SqlServer,Oracle,SQLite等等的,我在上篇随笔《ABP框架使用Mysql数据库,以及基于SQLServer创建Mysql数据库的架构和数据》已经详细介绍过如何从SQLServer迁移支
using Abp.Domain.Entities; using Abp.Domain.Repositories; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace report.EntityFramework.Repositories.Second { public interface I
前言 使用ABP 的 ApplictianService 暴露出的接口,ABP默认对响应结果做了封装。格式如下: { "result": { "data":"接口返回的json对象被放在result中了" }, "targetUrl": null, "success": true, "error": null, "
目录 前言 一、pandas是什么? 二、使用步骤 1.下载项目 2.解压压缩包运行文件 3.在项目路径里面找到这两个文件,把数据库位置写上去,例如本地就local host 4.在工具里面找到程序包管理控制台 5.运行成功 6.设置启动项 7.运行成功就会有相对应的数据库 8.运行项目 9
之前用过abp framework。在使用 vnext 时,目前最大的感受是颠覆了我对于导航属性的认知。 因为不符合 DDD 理念,不再被 abp 所推荐使用了,所以在使用操作关联实体时(继承了 AggregateRoot 的实体),只能手动操作了。对我EF的使用习惯形成了很大的冲击。 https://github.com/abpframework/
本文首发于个人博客(https://blog.zhangchi.fun/) 在进行框架的选型时,经常会听到“***框架太重了”之类的声音,比如“Abp太重了,不适合我们...”。事实上,Abp框架真的很重吗? 框架的“轻”和“重”,我没有在网上找到明确的定义,通过阅读一些技术博客,大致可以把框架的“轻”和“重”通过
介绍 很久没有更新博客了,之前想更新但是发现博客园崩了,外加工作上的调换也比较忙,最近有了点时间我来继续更新下这个系列的文章。 今年3月份我带着我们研发组同事,将公司产品从老Abp重构到Abp vNext目前已经上线,我非常确认Abp vNext完全可以应用到生产环境,并且他足以支撑超复杂业务
介绍 很久没有更新博客了,之前想更新但是发现博客园崩了,外加工作上的调换也比较忙,最近有了点时间我来继续更新下这个系列的文章。 今年3月份我带着我们研发组同事,将公司产品从老Abp重构到Abp vNext目前已经上线,我非常确认Abp vNext完全可以应用到生产环境,并且他足以支撑超复杂业务
数据库的选择: Mysql使用5.0.0的版本,根据在下面的依赖项 大于等于5.0.5 && 小于6.0.0 Microsoft.EntityFrameworkCore.Tools和Microsoft.EntityFrameworkCore.Design使用的是5.0.5 但是,Mysql初始化还出现了错误。之后从这个网址上找到https://github.com/PomeloFoundation/Pomelo
2021-07-08 20:43:47.187 +08:00 [INF] Initialized all ABP modules. 2021-07-08 20:43:49.317 +08:00 [ERR] The required antiforgery cookie ".AspNetCore.Antiforgery.O8uYkIqhOQY" is not present. 2021-07-08 20:44:39.149 +08:00 [ERR] The required antifo
阅读目录 ABP Framework 研习社经验总结(6.28-7.2) 目录 ABP Framework 研习社经验总结(6.28-7.2) 研习社初衷 十天回顾 研习社经验总结(6.28-7.2) 问题1:关于ABP版本 问题2:关于DDD和三层架构区别 问题3:ObjectMapper是不是和领域服务有些冲突? 问题4:求 IssueTracking 项目源码
阅读目录 什么是领域驱动设计? 实现:全景图 回到目录 什么是领域驱动设计? 领域驱动设计(简称:DDD)是一种针对复杂需求的软件开发方法。将软件实现与不断发展的模型联系起来,专注于核心领域逻辑,而不是基础设施细节。DDD适用于复杂领域和大规模应用,而不是简单的CRUD应用。它有助于建
一、前言在文章 【Abp VNext】实战入门(十二):【1】角色权限管理 —— 后端对应的框架结构表 中讲解了用户、角色、权限、功能之间的关系以及对应的后端数据库表架构 ; 还有AbpVnext Web项目中 自带的集成好的用户角色管理; 本章主要讲解如何简单快捷的使用AbpVnext自带功能接口来修改
目录 ABP Framework 研习社经验总结(6.28-7.2) 研习社初衷十天回顾研习社经验总结(6.28-7.2) 问题1:关于ABP版本问题2:关于DDD和三层架构区别问题3:ObjectMapper是不是和领域服务有些冲突?问题4:求 IssueTracking 项目源码问题5:关于应用层分层问题问题6:关于自定义身份验
《实现领域驱动设计》 —— 基于 ABP Framework 实现领域驱动设计实用指南 翻译缘由 自 ABP vNext 1.0 开始学习和使用该框架,被其优雅的设计和实现吸引,适逢 ABP Framework 4.3 版本发布,官网将实现DDD部分的帮助文档,整理成电子书《Implementing Domain Driven Design》 发布,标志着A
目录系列文章数据传输对象输入DTO最佳实践不要在输入DTO中定义不使用的属性不要重用输入DTO输入DTO中验证逻辑输出DTO最佳实践对象映射学习帮助 系列文章 基于ABP落地领域驱动设计-00.目录和前言 基于ABP落地领域驱动设计-01.全景图 基于ABP落地领域驱动设计-02.聚合和聚合根的最