MinimalApis.Extensions 0.5.2-pre.20220322.22
MinimalApis.Extensions
A set of extensions and helpers that extend the funcationality of ASP.NET Core Minimal APIs.
Installation
Prerelease Builds
This package is currently available in prerelease from nuget.org:
> dotnet add package MinimalApis.Extensions --prerelease
CI Builds
If you wish to use builds from this repo's main branch you can install them from this repo's package feed. See these instructions for further details about working with GitHub package feeds.
Getting Started
- Install the NuGet package into your ASP.NET Core project:
> dotnet add package MinimalApis.Extensions --prerelease - In your project's
Program.cs, call theAddEndpointsProvidesMetadataApiExplorer()method onbuilder.Servicesto enable enhanced endpoint metadata inApiExplorer:var builder = WebApplication.CreateBuilder(args); builder.Services.AddEndpointsProvidesMetadataApiExplorer(); // <-- Add this line builder.Services.AddSwaggerGen(); ... - Update your Minimal APIs to use the helper binding and result types from this library, e.g.:
app.MapPost("/todos", async Task<Results<ValidationProblem, Created<Todo>>> (Validated<Todo> input, TodoDb db) => { if (!input.IsValid) return Results.Extensions.ValidationProblem(input.Errors); var todo = input.Value; db.Todos.Add(todo); await db.SaveChangesAsync(); return Results.Extensions.Created($"/todos/{todo.Id}", todo); });
What's Included?
This library provides types that help extend the core functionality of ASP.NET Core Minimal APIs in the following ways:
- Enhanced parameter binding
- Typed
IResultobjects for easier unit testing (available viaResults.Extensions) - Automatic population of detailed endpoint descriptions in Swagger/OpenAPI via the ability for input and result types to add to endpoint metadata via
IProvideEndpointParameterMetadataandIProvideEndpointResponseMetadata - Union
IResultreturn types viaResults<TResult1, TResultN>that enable route handler delegates to declare all the possibleIResulttypes they can return, enabling compile-time type checking and automatic population of possible responses in Swagger/OpenAPI
Sample Projects
TodoApis.Dapper
An example Todos application using ASP.NET Core Minimal APIs and the Dapper library for data storage in SQLite.
MinimalApis.Examples
Contains small examples for other types in this library.
MinimalApiPlayground
Shows many examples of using the types in this library along with other things related to ASP.NET Core Minimal APIs.
No packages depend on MinimalApis.Extensions.
.NET 6.0
- MiniValidation (>= 0.5.0-pre.20220315.50)
| Version | Downloads | Last updated |
|---|---|---|
| 0.11.0 | 13 | 03/07/2025 |
| 0.10.1 | 12 | 06/26/2023 |
| 0.10.0 | 12 | 03/07/2025 |
| 0.9.1-pre.20221114.39 | 12 | 03/07/2025 |
| 0.7.1-pre.20220712.30 | 12 | 03/07/2025 |
| 0.5.2-pre.20220322.22 | 13 | 03/07/2025 |
| 0.3.1-pre.20211111.10 | 12 | 03/07/2025 |
| 0.3.0-pre.20211110.9 | 12 | 03/07/2025 |
| 0.1.0-pre.20211027.5 | 13 | 03/07/2025 |