Trellis.ServiceDefaults
3.0.0-alpha.554
See the version list below for details.
dotnet add package Trellis.ServiceDefaults --version 3.0.0-alpha.554
NuGet\Install-Package Trellis.ServiceDefaults -Version 3.0.0-alpha.554
<PackageReference Include="Trellis.ServiceDefaults" Version="3.0.0-alpha.554" />
<PackageVersion Include="Trellis.ServiceDefaults" Version="3.0.0-alpha.554" />
<PackageReference Include="Trellis.ServiceDefaults" />
paket add Trellis.ServiceDefaults --version 3.0.0-alpha.554
#r "nuget: Trellis.ServiceDefaults, 3.0.0-alpha.554"
#:package Trellis.ServiceDefaults@3.0.0-alpha.554
#addin nuget:?package=Trellis.ServiceDefaults&version=3.0.0-alpha.554&prerelease
#tool nuget:?package=Trellis.ServiceDefaults&version=3.0.0-alpha.554&prerelease
Trellis.ServiceDefaults
An ordered composition root for Trellis services. Configure authorization, validation, EF Core transactions, outbox, inbox, idempotency, and integration events in one fluent call.
Installation
dotnet add package Trellis.ServiceDefaults
Quick Example
using Trellis.ServiceDefaults;
builder.Services.AddTrellis(trellis => trellis
.UseAsp()
.UseScalarValueValidation()
.UseProblemDetails()
.UseMediator()
.UseFluentValidation(typeof(Program).Assembly)
.UseClaimsActorProvider()
.UseResourceAuthorization(typeof(Program).Assembly)
.UseEntityFrameworkUnitOfWork<AppDbContext>());
Call AddTrellis(...) once. If omitted, the composition features are intentionally not registered.
Key Features
- Applies Trellis registrations in canonical pipeline order.
- Existing Mediator/resource slots automatically install the dispatch authorization context: static/resource stages and actor-aware handlers share one checked Actor reference. No new actor-handler toggle is needed.
- Keeps feature selection explicit and discoverable at the application composition root.
- Provides slots for ASP.NET Core, authorization, FluentValidation, EF Core unit of work, outbox, inbox, idempotency, and events.
- Preserves package-specific options through focused
UseXxx(...)methods. - Leaves vendor stores and transport adapters in their owning packages, avoiding unnecessary SDK dependencies.
For most applications, use the builder instead of mixing standalone AddTrellis* calls. Provider-specific stores and adapters remain separate registrations by design.
Native AOT hosts with struct Result<T> responses need the literal closed-generator
pipeline
and direct typed resource registrations, without UseMediator or slots that imply it:
native DI cannot dynamically close open behaviors over value-type responses.
Documentation
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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. |
-
net10.0
- FluentValidation (>= 12.1.1)
- Mediator.Abstractions (>= 3.0.2)
- Microsoft.EntityFrameworkCore (>= 10.0.12)
- Microsoft.EntityFrameworkCore.Relational (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.12)
- Microsoft.Extensions.DependencyModel (>= 10.0.12)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Options (>= 10.0.12)
- OpenTelemetry.Api (>= 1.19.1)
- Trellis.Asp (>= 3.0.0-alpha.554)
- Trellis.EntityFrameworkCore (>= 3.0.0-alpha.554)
- Trellis.EntityFrameworkCore.Inbox (>= 3.0.0-alpha.554)
- Trellis.EntityFrameworkCore.Outbox (>= 3.0.0-alpha.554)
- Trellis.Mediator (>= 3.0.0-alpha.554)
- Trellis.Mediator.FluentValidation (>= 3.0.0-alpha.554)
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 |
|---|---|---|
| 3.0.0-alpha.574 | 50 | 10/14/2026 |
| 3.0.0-alpha.571 | 45 | 10/13/2026 |
| 3.0.0-alpha.557 | 89 | 10/8/2026 |
| 3.0.0-alpha.554 | 53 | 10/8/2026 |
| 3.0.0-alpha.553 | 50 | 10/7/2026 |
| 3.0.0-alpha.542 | 113 | 10/5/2026 |
| 3.0.0-alpha.539 | 57 | 10/4/2026 |
| 3.0.0-alpha.532 | 60 | 10/2/2026 |
| 3.0.0-alpha.527 | 55 | 10/1/2026 |
| 3.0.0-alpha.526 | 61 | 9/30/2026 |
| 3.0.0-alpha.524 | 62 | 9/27/2026 |
| 3.0.0-alpha.520 | 64 | 9/25/2026 |
| 3.0.0-alpha.516 | 148 | 9/22/2026 |
| 3.0.0-alpha.513 | 57 | 9/22/2026 |
| 3.0.0-alpha.505 | 67 | 9/13/2026 |
| 3.0.0-alpha.495 | 129 | 8/24/2026 |
| 3.0.0-alpha.458 | 111 | 8/19/2026 |
| 3.0.0-alpha.455 | 128 | 8/19/2026 |
| 3.0.0-alpha.449 | 80 | 8/18/2026 |
| 3.0.0-alpha.447 | 78 | 8/18/2026 |