abp
  • 2024-11-20面试精选01-谈谈你对Abp中模块的理解
    模块可以理解成系统中一个独立的功能。例如缓存Redis、队列RabbitMQ、IOC框架Autofac。使用ABP模块可以解决模块之间的依赖问题,通过模块化设计,每个模块可以独立开发、测试和部署,从而减少代码的耦合度,提高了代码的可维护性和复用性,同时使得应用程序更加容易扩展和升级。在A
  • 2024-11-20Abp.VNext-模块
    模块的概念模块可以理解成系统中一个独立的功能。例如缓存Redis、队列RabbitMQ、IOC框架Autofac。模块的作用使用ABP模块可以解决模块之间的依赖问题,通过模块化设计,每个模块可以独立开发、测试和部署,从而减少代码的耦合度,提高了代码的可维护性和复用性,同时使得应用程序更加容易
  • 2024-11-19Abp.VNext-工作单元Unitofwork
    事务工作单元=数据库事务+工作单元事务。Controller[ApiController][Route("[controller]")]publicclassBlogController:AbpController{privateBlogAppService_blogAppService=>LazyServiceProvider.LazyGetRequiredService<BlogAppService>();public
  • 2024-11-19Abp.VNext-异步执行帮助类AsyncHelper
    作用以同步的方式运行异步方法。代码实现//无返回值的异步方法publicasyncTaskGetDataNoResult(){awaitTask.CompletedTask;}//有返回值的异步方法publicasyncTask<bool>GetDataWithResult(){returnawaitTask.FromResult(true);}[Htt
  • 2024-11-19Abp.VNext-异步执行器AsyncExecuter
    作用方便在应用服务层对IQueryable执行异步操作。代码实现varqueryable=await_ordedrRepository.WithDetailAsync(x=>x.OrderItems);queryable=queryable.WhereIf(inputDto.Guids.Any(),x=>inputDto.GuidIds.Contains(x.Id));varpageQueryable=queryable.OrderBy(
  • 2024-11-19Abp.VNext-聚合根类
    聚合根类(AggregateRoot)聚合一般包括多个实体或者值对象,聚合根可以理解为根实体或者叫主实体。BasicAggregateRootAggregateRoot类继承自Entity类,TKey可以是GUID、Int、String类型等。AggregateRoot有其他属性来支持乐观并发和对象扩展特性CreationAuditedAggregateRoot继承
  • 2024-11-19Abp.VNext-数据审计
    IHasConcurrencyStampIHasConcurrencyStamp添加了由ABP框架管理的ConcurrencyStamp属性实现乐观并发。实体类继承了IHasConcurrencyStamp以后,对该实体的更新就自动带乐观锁了。ISoftDelete实现逻辑删除功能,该接口中定义了IsDeleted变量,用于标记实体是否被逻辑删除。实体
  • 2024-11-19Abp.VNext-SaveChanges事务提交
    varblog=await_blogRepository.InsertAsync(ObjectMapper.Map<AddBlogInputDto,Blog>(inputDto));//查询不到数据,返回nullvarnewblog=await_blogRepository.FindAsync(blog.Id);//加上此行代码后,若插入异常,执行此行代码后回滚并且不会再往下走//不加此代码,若插
  • 2024-11-19Abp.VNext-拆分查询
    Abp默认采用的是拆分查询,优点是提高性能,缺点是使用Linq进行多表关联操作时打印查询字符串得到的SQL语句是单表查询语句。而实际上代码执行的是多表关联查询,容易误导开发人员。例如下列LINQ查询是多表关联,但是得到的查询字符串是单表操作。varquery=(await_blogRepository.G
  • 2024-11-19Abp.VNext-显示加载实体导航属性
    方式一:为实体配置默认导航并设置includeDetails属性为true[DependsOn(typeof(AbpEntityFrameworkCoreMySQLModule))]publicclassEntityFrameworkCoreModule:AbpModule{publicoverridevoidConfigureServices(ServiceConfigurationContextcontext){Co
  • 2024-11-19Abp.VNext-数据过滤
    如何实现软删除数据查询过滤实体类继承ISoftDelete接口后,查询获取到的返回结果将不包含已删除的数据。如何关闭软删除数据过滤全局方式关闭软删除数据过滤EntityFrameworkCoreModule模块类中使用。[DependsOn(typeof(AbpEntityFrameworkCoreMySQLModule))]publicclassEnti
  • 2024-11-19Abp.VNext-统一配置UTC时区时间
    PreConfigureServices方法重载并添加如下代码[DependsOn(typeof(AbpAutofacModule),typeof(AbpAspNetCoreMvcModule),)]publicclassApiHostModule:AbpModule{publicoverridevoidPreConfigureServices(ServiceConfigurationContextcontext)
  • 2024-11-05Abp-工作单元应用场景注意事项
    Abp-工作单元应用场景注意事项事务工作单元=数据库事务+工作单元事务。Controller[ApiController][Route("[controller]")]publicclassBlogController:AbpController{privateBlogAppService_blogAppService=>LazyServiceProvider.LazyGetRequiredService<BlogA
  • 2024-11-01.NET 平台 WPF 通用权限开发框架 (ABP)
    前言对于大多数.NET后端开发者而言,ABP框架已经相当熟悉,可以轻松进行二次开发,无需重复实现用户角色管理、权限控制、组织管理和多租户等功能。然而,ABP框架主要专注于Web应用,对于桌面端和移动设备的支持较为有限。因此,对于有桌面或移动开发需求的开发者来说,可能需要寻找其他解决方
  • 2024-10-25Abp-VNext用户权限管理系列文章---工作流
    一、工作流的使用1、工作流定义图,我们定义了一个订单的工作审批流2、创建的可以审批的用户,密码都为Bridge0发起流程:用户wf_order_creator  订单创建员采购科员审核:角色:采购科员  用户:wf_order_officer  +订单审核科员采购科长审核: wf_order_deptHead  订单审核
  • 2024-10-22使用Radzen Blazor组件库开发的基于ABP框架炫酷UI主题
    一、项目简介使用过ABP框架的童鞋应该知道它也自带了一款免费的BlazorUI主题,它的页面是长这样的:个人感觉不太美观,于是网上搜了很多Blazor开源组件库,发现有一款样式非常不错的组件库,名叫:Radzen,它的组件库案例网址是:SampleBlazorDashboard|FreeUIComponentsbyRadzen,比较
  • 2024-10-15ABP VNext 系列:框架启动流程以及依赖注入原理和源码分析
    简单介绍ABPVNextGithub地址:https://github.com/abpframework/abp官网文档地址:https://abp.io/docs/latest官网:https://abp.io/ABPVNext框架是一个基于ASP.NETCore的完整基础架构,也就是我们现在称的ABP框架,它遵循软件开发最佳实践和最新技术来创建现代Web应用程
  • 2024-10-05AspNet Zero Core
    原文: https://www.cnblogs.com/Leo_wl/p/8439906.html阅读目录解决AspNetZeroCore5.0.1无法运行的问题回到目录解决AspNetZeroCore5.0.1无法运行的问题 最近在研究AspNetZeroCore5.0.1时发现VS点击调试后就自动退出了,从ABPQQ群里得知作者加入了licen
  • 2024-09-20ABP CLI积累与实战分享
  • 2024-09-12深入浅出ASPvNext开源框架学习视频
    学习目标:从入门到深度剖析.NetCoreABPvNext学习内容:源码目录结构依赖关系及内容ABPvNext第一课:源码目录结构依赖关系及内容DDD理论知识及代码实现ABPvNext第二课:DDD理论知识及代码实现ABP启动流程及模块化深入ABPvNext第三课:ABP启动流程及模块化深入深入动态API
  • 2024-08-24abp vnext请求头增加,以及请求头增加公共头部回调
    context.Services.AddHttpContextAccessor();要访问请求头的话,要加上这个语句;追加请求头的方法:1、服务层服务的HttpApi.Client项目Module类的ConfigureServices方法开头位置添加如下代码:context.Services.AddTransient<AddHeaderHandler>();context.Services.AddHttpClient(Prod
  • 2024-08-18Abp vNext+SignalR
    我的项目基于ABPvNext(版本8.2.0)+Blazor+SQLServer。从官网下载的模板默认不包含SignalR,因此这里记录了如何在ABPvNext中集成SignalR实现实时通信的过程。以下是一个详细的集成步骤指南:1.安装所需的NuGet包官方文档:https://abp.io/docs/latest/framework/rea
  • 2024-08-18Abp vNext+SqlServer+MySqlServer
    目前项目使用的是ABPvNext版本8.2.0加上SQLServer。由于业务需求,我们需要与MySQL数据库进行对接,这意味着项目的主要功能将继续使用SQLServer,而部分特定功能将需要与MySQL数据库交互。步骤1.在项目“XXX.XXX.EntityFrameworkCore”中安装MySql包dotnetaddpackag
  • 2024-08-14ABP默认模板修改默认数据库类型并初始化数据库数据
    我这里以SQLite数据库为例,其他数据库类似。1.下载模板https://aspnetboilerplate.com/ 根据自己的需求选择版本和前端框架并填写项目名称,点击“Createmyproject!”即可下载一个ABP标准模板项目。  解压下载好的压缩包,找到目录:aspnet-core,接下来就可以用VS打开.sln
  • 2024-07-22ABP vNext—审计日志使用
    ABPvNext—审计日志关于审计日志开启审计日志如何自定义审计日志关于审计日志审计跟踪(也称为审核日志)是一个安全相关的时间顺序记录,记录这些记录的目的是为已经影响在任何时候的详细操作,提供程序运行的证明文件记录、源或事件。ABP提供了能够为应用程序交互自动记