Sparkdo.EventBus 1.0.2-preview.1

This is a prerelease version of Sparkdo.EventBus.
dotnet add package Sparkdo.EventBus --version 1.0.2-preview.1
                    
NuGet\Install-Package Sparkdo.EventBus -Version 1.0.2-preview.1
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Sparkdo.EventBus" Version="1.0.2-preview.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Sparkdo.EventBus" Version="1.0.2-preview.1" />
                    
Directory.Packages.props
<PackageReference Include="Sparkdo.EventBus" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Sparkdo.EventBus --version 1.0.2-preview.1
                    
#r "nuget: Sparkdo.EventBus, 1.0.2-preview.1"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Sparkdo.EventBus@1.0.2-preview.1
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Sparkdo.EventBus&version=1.0.2-preview.1&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=Sparkdo.EventBus&version=1.0.2-preview.1&prerelease
                    
Install as a Cake Tool

Sparkdo EventBus

Sparkdo 事件总线实现库,提供本地和分布式事件发布/订阅功能。

功能概述

该库实现了事件总线模式,支持本地事件和分布式事件的发布与订阅处理:

  • IEventBus: 事件总线核心接口实现
  • ILocalEventBus: 本地事件总线实现
  • IDistributedEventBus: 分布式事件总线实现
  • 事件处理器工厂和事件处理器管理
  • 工作单元集成支持

主要特性

  • 发布/订阅模式: 支持事件的发布和订阅处理
  • 本地和分布式支持: 支持本地事件和分布式事件
  • 工作单元集成: 支持在工作单元完成时发布事件
  • 灵活的订阅机制: 支持多种事件订阅方式
  • 多租户支持: 集成多租户上下文管理
  • AOT兼容: 支持.NET的AOT编译

核心组件

EventBusBase

事件总线基类,提供事件发布和订阅的核心实现:

  • PublishAsync: 发布事件
  • Subscribe: 订阅事件
  • Unsubscribe: 取消订阅事件
  • UnsubscribeAll: 取消订阅所有事件

SparkdoEventBusModule

事件总线模块类,负责注册事件总线相关服务:

  • 注册事件处理器
  • 配置本地和分布式事件总线
  • 初始化后台工作者

使用示例

// 订阅事件
eventBus.Subscribe<MyEvent>(async eventData => {
    // 处理事件
    await HandleEventAsync(eventData);
});

// 发布事件
await eventBus.PublishAsync(new MyEvent { Message = "Hello World" });

相关项目

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (5)

Showing the top 5 NuGet packages that depend on Sparkdo.EventBus:

Package Downloads
Sparkdo.Ddd.Domain

Sparkdo DDD 领域模型库,提供领域驱动设计的核心组件实现

Sparkdo.Users.Abstractions

Sparkdo 用户管理抽象库,提供用户管理功能的核心接口定义和事件定义

Sparkdo.EventBus.Kafka

Sparkdo Kafka 事件总线实现,提供基于 Kafka 的分布式事件发布和订阅功能

Sparkdo.EventBus.RabbitMQ

Sparkdo RabbitMQ 事件总线实现,提供基于 RabbitMQ 的分布式事件发布和订阅功能

Sparkdo.EventBus.StackExchangeRedis

Sparkdo 基于 StackExchange.Redis 的分布式事件总线实现,使用 Redis 的 Pub/Sub 机制实现分布式事件的发布和订阅功能

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.2-preview.1 152 12/4/2025
1.0.1 898 11/27/2025
1.0.0 889 11/25/2025
1.0.0-preview.5 102 10/24/2025