LightMediator 0.1.0
See the version list below for details.
dotnet add package LightMediator --version 0.1.0
NuGet\Install-Package LightMediator -Version 0.1.0
<PackageReference Include="LightMediator" Version="0.1.0" />
paket add LightMediator --version 0.1.0
#r "nuget: LightMediator, 0.1.0"
// Install LightMediator as a Cake Addin #addin nuget:?package=LightMediator&version=0.1.0 // Install LightMediator as a Cake Tool #tool nuget:?package=LightMediator&version=0.1.0
LightMediator
LightMediator is a lightweight library designed to simplify decoupled communication in distributed Windows services. It works with multiple notification types and supports services across different namespaces.
Features
- Lightweight and efficient.
- Supports publish-subscribe, request-response, and one-way notifications.
- Simplifies working with decoupled services in distributed systems.
- Easy to integrate with existing applications.
Installation
You can install the LightMediator NuGet package using the following command:
dotnet add package LightMediator
Usage
Publish Notifications
You can publish notifications to subscribers using the LightMediator instance:
var mediator = new LightMediator();
mediator.Publish(new Notification("ServiceStarted"));
Handle Notifications
To handle notifications, create a class that implements the INotificationHandler<T>
interface. Ensure that Notification
implements the INotification
interface:
public class Notification : INotification
{
public string Message { get; }
public Notification(string message)
{
Message = message;
}
}
public class NotificationHandler : INotificationHandler<Notification>
{
public Task Handle(Notification notification, CancellationToken cancellationToken)
{
Console.WriteLine($"Received: {notification.Message}");
return Task.CompletedTask;
}
}
License
This project is licensed under the MIT License. See the LICENSE file for details.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. 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. |
-
net8.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 9.0.1)
- Microsoft.Extensions.Logging.Abstractions (>= 9.0.1)
- Newtonsoft.Json (>= 13.0.3)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
- Initial release of LightMediator
- Lightweight and fast for Windows services
- Supports multiple notification types
- Simplifies decoupled communication