Frank.Channels.DependencyInjection
1.2.0
dotnet add package Frank.Channels.DependencyInjection --version 1.2.0
NuGet\Install-Package Frank.Channels.DependencyInjection -Version 1.2.0
<PackageReference Include="Frank.Channels.DependencyInjection" Version="1.2.0" />
paket add Frank.Channels.DependencyInjection --version 1.2.0
#r "nuget: Frank.Channels.DependencyInjection, 1.2.0"
// Install Frank.Channels.DependencyInjection as a Cake Addin #addin nuget:?package=Frank.Channels.DependencyInjection&version=1.2.0 // Install Frank.Channels.DependencyInjection as a Cake Tool #tool nuget:?package=Frank.Channels.DependencyInjection&version=1.2.0
Frank.Channels.DependencyInjection
A tiny library for having Channel<T> as a Dependency Injection resource in a sane manner
Usage
using Frank.Channels.DependencyInjection;
// Register the channel of a type as a dependency:
services.AddChannel<string>();
// Use the channel as a dependency in various ways:
var channel = provider.GetRequiredService<Channel<string>>();
var channelWriter = provider.GetRequiredService<ChannelWriter<string>>();
var channelReader = provider.GetRequiredService<ChannelReader<string>>();
Advanced usage
using Frank.Channels.DependencyInjection;
// Register the channel of a type as a dependency with a custom configuration:
services.AddChannel<string>(options =>
{
options.BoundedCapacity = 100;
options.FullMode = BoundedChannelFullMode.Wait;
options.SingleReader = true;
options.SingleWriter = true;
});
// Use the channel as a dependency in various ways:
var channel = provider.GetRequiredService<Channel<string>>();
var channelWriter = provider.GetRequiredService<ChannelWriter<string>>();
var channelReader = provider.GetRequiredService<ChannelReader<string>>();
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. |
-
net8.0
- Microsoft.Extensions.DependencyInjection (>= 8.0.0)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on Frank.Channels.DependencyInjection:
Package | Downloads |
---|---|
Frank.PulseFlow
PulseFlow uses Channel -mechanism for internal messaging |
|
Frank.WireFish
WireFish is a library for capturing network traffic. Its meant to be very simple and flexible. It is built on top of SharpPcap and Frank.Channels.DependencyInjection, intending to provide a simple and flexible way to capture network traffic. Then allow the user to process the packets in any way they see fit. The intention is to only provide the capturing and then allow the user to register their own packet processors to do whatever they want with the packets. This came about because I needed to capture network traffic and WireShark is very unwieldy and I wanted to be able to process the packets in any way I wanted where as WireShark is very limited in what it can do. |
|
Frank.WorkflowEngine
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.2.0 | 238 | 2/24/2024 |
1.1.3-preview | 99 | 2/24/2024 |
1.1.0 | 343 | 2/2/2024 |
1.0.2-preview | 85 | 2/2/2024 |
1.0.0 | 115 | 2/1/2024 |
0.1.1-preview | 93 | 1/31/2024 |