IronAlpine.Mediator.Abstractions 2.0.0

dotnet add package IronAlpine.Mediator.Abstractions --version 2.0.0
                    
NuGet\Install-Package IronAlpine.Mediator.Abstractions -Version 2.0.0
                    
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="IronAlpine.Mediator.Abstractions" Version="2.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="IronAlpine.Mediator.Abstractions" Version="2.0.0" />
                    
Directory.Packages.props
<PackageReference Include="IronAlpine.Mediator.Abstractions" />
                    
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 IronAlpine.Mediator.Abstractions --version 2.0.0
                    
#r "nuget: IronAlpine.Mediator.Abstractions, 2.0.0"
                    
#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 IronAlpine.Mediator.Abstractions@2.0.0
                    
#: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=IronAlpine.Mediator.Abstractions&version=2.0.0
                    
Install as a Cake Addin
#tool nuget:?package=IronAlpine.Mediator.Abstractions&version=2.0.0
                    
Install as a Cake Tool

IronAlpine.Mediator.Abstractions

Why

Contract package for mediator requests, handlers, notifications, and pipeline behavior interfaces.

Installation

dotnet add package IronAlpine.Mediator.Abstractions

Key Contracts

  • IRequest<TResponse>
  • IRequestHandler<TRequest,TResponse>
  • INotification
  • INotificationHandler<TNotification>
  • IPipelineBehavior<TRequest,TResponse>

Usage

Reference this package from domain/application projects that should not depend on runtime mediator implementation.

Configuration Deep Dive

When a package exposes options classes, use builder.Configuration binding and keep values explicit per environment.

Common guidance:

  • Prefer explicit values in production.
  • Keep retries/timeouts conservative; tune with telemetry.
  • Enable startup validation in non-development environments.
  • Fail fast when required dependencies are missing.

Integration Patterns

Pattern A: API service with EF + Messaging

  1. Register EF provider package.
  2. Register messaging inbox/outbox package.
  3. Register mediator and behavior order.
  4. Enable health readiness checks for DB and broker.

Pattern B: Read-heavy service with Dapper + Messaging

  1. Register Dapper data package.
  2. Register messaging package with consumer enabled.
  3. Add observability and structured logging.

Pattern C: Security-focused service

  1. Register security ASP.NET package.
  2. Add policy catalog or resolver.
  3. Register authorization EFCore projection package only where needed.

Options Checklist

Use this checklist when configuring any IronAlpine package:

  • Required connection strings present.
  • Feature flags intentional (Enable* values reviewed).
  • Retry and timeout values match SLO expectations.
  • Startup validation behavior understood.
  • Environment-specific defaults are overridden in production.

Troubleshooting Matrix

  • Startup failure with validation error : A required dependency package or config value is missing. Check package registrations and bound options sections.
  • Background workers not starting : Verify execution mode, Enable* flags, and hosted services registration.
  • Policy/authorization mismatch : Check claim types, policy naming strategy, and catalog entries.
  • Cache stale or no-hit behavior : Validate key generation, invalidation path, and distributed lock configuration.
  • Messaging duplicate handling issues : Verify event-id propagation and idempotency key construction.

Best-Practice Notes

  • Keep handler logic deterministic and side-effect boundaries explicit.
  • Keep IQueryable usage inside application handlers/services.
  • Keep transaction save boundaries in handlers where business intent is clear.
  • Prefer explicit topic policy metadata for critical events.
Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net10.0

    • No dependencies.
  • net9.0

    • No dependencies.

NuGet packages (8)

Showing the top 5 NuGet packages that depend on IronAlpine.Mediator.Abstractions:

Package Downloads
IronAlpine.Kernel

Reusable kernel primitives for microservice applications: result pattern, value objects, entities, and smart enumeration.

IronAlpine.Data.EFCore.Mediator

Mediator pipeline behaviors that bridge IronAlpine.Mediator and IronAlpine.Data.EFCore.

IronAlpine.Mediator

High-performance mediator runtime for request/response, notifications, and streaming with configurable publish strategies.

IronAlpine.Mediator.DependencyInjection

Dependency injection integration for IronAlpine mediator, including assembly scanning and open behavior registration.

IronAlpine.Caching

Caching contracts, settings APIs, and mediator pipeline behavior for IronAlpine applications with graceful local fallback when distributed lock providers are unavailable.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2.0.0 1,893 4/2/2026
Loading failed

Stable patch release: contract refinements and production hardening.