Publish DistributedEventSent/DistributedEventReceived events in unit test for testing. by @maliming in #21928 Update Npgsql.EntityFrameworkCore.PostgreSQL to 9.0.3. by @maliming in #21927 Added Encrypting Setting Values in the Application Configurationsection. by @maliming in #21933 Check if prop...
In the unit test of the EventHandler each call ofIDistributedEventBus.PublishAsync()gets redirected to theLocalDistributedEventBuswhich in turn adds those Events to theVolo.Abp.UnitOfWork.LocalEventscollection. When the unitOfWork gets completed theVolo.Abp.EntityFrameworkCore.AbpDbContext.PublishEntity...
分布式服务层(Distributed Service Layer) 应用层(Application Layer) 领域层 基础设施层 3.使用ABP项目模版快速生成应用程序 0.引言 应用程序的分层是一种广泛接受的技术, 可以降低复杂度和提高代码的可重用性。为了实现分层架构,ABP遵循领域驱动设计(DDD)原则。 1.DDD分层 领域驱动设计有四个基本的层: 表现层(Pres...
[1] 控制台应用程序示例: https://github.com/abpframework/abp/tree/dev/test/DistEvents [2] RabbitMQ: https://docs.abp.io/en/abp/latest/Distributed-Event-Bus-RabbitMQ-Integration [3] Kafka: https://docs.abp.io/en/abp/latest/Distributed-Event-Bus-Kafka-Integration [4] 分布式事件总线: http...
Abp.DistributedLocking; using Volo.Abp.EventBus.RabbitMq; using Volo.Abp.Modularity; using Volo.Abp.MultiTenancy; using Volo.Abp.EntityFrameworkCore; namespace FunShow.Shared.Hosting.Microservices; [DependsOn( typeof(AbpEntityFrameworkCoreModule), typeof(FunShowSharedHostingAspNetCoreModule), typeof(...
EntityFrameworkCore项目依赖于Domain,因为它需要引用Entity实体和Repository存储接口。 NuGet安装:Volo.Abp.EntityFrameworkCore.XXX DbMigrator 配置连接字符串,给EntityFrameworkCore项目引用 如果需要通过程序包管理器生成数据库或代码,需要引用EntityFrameworkCore和Application.Contracts项目 ...
分布式服务层(Distributed Service Layer) 该层主要通过远程APIs(如REST、OData、GraphQL等)服务于应用服务/领域功能。该层只是将HTTP请求转换为领域交互,或可使用应用服务来委托操作,而并不包含业务逻辑。通常包括授权(Authorization)、缓存(Caching)、审计日志(Audit Logging)、对象映射(Object Mapping)、异常处理(Excepti...
Repository仓储模式(已实现了Entity Framework、NHibernate、MangoDB、内存数据库) Unit Of Work工作单元模式(为应用层和仓储层的方法自动实现数据库事务) EventBus实现领域事件﴾Domain Events﴿ DLL嵌入资源管理 通过Application Services自动创建Web Api层(不需要写ApiController层了) ...
首先从 Volo.Abp.EntityFrameworkCore 的 AbpEntityFrameworkCoreModule 开始分析,该模块只重写了 ConfigureServices() 方法,在内部也只有两句代码。 public override void ConfigureServices(ServiceConfigurationContext context) { // 调用 AbpDbContextOptions 的预配置方法,为了解决下面的问题。 // https://stackoverflow...
Repository仓储模式(已实现了Entity Framework、NHibernate、MangoDB、内存数据库) Unit Of Work工作单元模式(为应用层和仓储层的方法自动实现数据库事务) EventBus实现领域事件﴾Domain Events﴿ DLL嵌入资源管理 通过Application Services自动创建Web Api层(不需要写ApiController层了) ...