Bediator 1.0.3

There is a newer version of this package available.
See the version list below for details.
dotnet add package Bediator --version 1.0.3                
NuGet\Install-Package Bediator -Version 1.0.3                
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="Bediator" Version="1.0.3" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Bediator --version 1.0.3                
#r "nuget: Bediator, 1.0.3"                
#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.
// Install Bediator as a Cake Addin
#addin nuget:?package=Bediator&version=1.0.3

// Install Bediator as a Cake Tool
#tool nuget:?package=Bediator&version=1.0.3                

BDiator

A very simple mediator pattern implementation, pronounced as Mediator but with the letter B =)

Easily register multiple handlers for messages. No need for any specific implementation of BDiator so no dependencies in your use layers.

Example usage:

var bdiator = new BDiator(new HandlerProvider());
bdiator.Subscribe<IMessageHandler<IMessage>, IMessage>();
bdiator.Subscribe<IEventHandler<IEvent>, IEvent>();

await bdiator.HandleAsync(new UpdatedEvent()
{
    UpdatedTime = DateTime.Now
});

await bdiator.HandleAsync(new CreatedEvent()
{
    EventDetails = new CreatedEventDetails()
    {
        Id = Guid.NewGuid()
    }
});

await bdiator.HandleAsync(new NotifiedMessage()
{
    Message = "Notified from other type of handler!"
});

Setup the handler provider to get your eventhandlers from a DI system and off you go!

Product Compatible and additional computed target framework versions.
.NET net5.0 is compatible.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net5.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.6 639 8/31/2022
1.0.5 550 12/11/2021
1.0.4 305 9/29/2021
1.0.3 315 9/29/2021
1.0.2 300 9/29/2021
1.0.1 2,156 9/16/2021
1.0.0 291 9/16/2021