OrionGuard.Swagger
6.4.2
dotnet add package OrionGuard.Swagger --version 6.4.2
NuGet\Install-Package OrionGuard.Swagger -Version 6.4.2
<PackageReference Include="OrionGuard.Swagger" Version="6.4.2" />
<PackageVersion Include="OrionGuard.Swagger" Version="6.4.2" />
<PackageReference Include="OrionGuard.Swagger" />
paket add OrionGuard.Swagger --version 6.4.2
#r "nuget: OrionGuard.Swagger, 6.4.2"
#:package OrionGuard.Swagger@6.4.2
#addin nuget:?package=OrionGuard.Swagger&version=6.4.2
#tool nuget:?package=OrionGuard.Swagger&version=6.4.2
OrionGuard.Swagger
Swagger / OpenAPI integration for OrionGuard. Surfaces your validation attributes directly in the generated OpenAPI schema so API consumers see the same constraints your server enforces.
What this package adds
- Schema filters that read
OrionGuardvalidation attributes ([NotNull],[Email],[Length],[Range],[Pattern], etc.) and add them asrequired,format,minLength,maxLength,minimum,maximum,patternon the corresponding OpenAPI property. - ProblemDetails response schema so clients know what a validation failure looks like (shape:
type,title,status,errors). - Swashbuckle.AspNetCore compatible out of the box.
Install
dotnet add package OrionGuard.Swagger
Requires Swashbuckle in your application. The core OrionGuard package is brought in transitively.
Quick start
using Moongazing.OrionGuard.Swagger;
builder.Services.AddSwaggerGen(options =>
{
options.AddOrionGuardSchemaFilters();
});
After this call, a DTO like:
public sealed class CreateUserRequest
{
[NotNull, Email] public string Email { get; set; } = default!;
[Length(8, 100)] public string Password { get; set; } = default!;
[Range(13, 120)] public int Age { get; set; }
}
shows up in /swagger with email format, minLength/maxLength on password, and minimum/maximum on age — automatically.
Targets
.NET 8.0, .NET 9.0, .NET 10.0.
License
MIT. See the main repository for full docs, CHANGELOG, and samples.
| 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 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. |
-
net10.0
- OrionGuard (>= 6.4.2)
- Swashbuckle.AspNetCore.SwaggerGen (>= 6.6.2)
-
net8.0
- OrionGuard (>= 6.4.2)
- Swashbuckle.AspNetCore.SwaggerGen (>= 6.6.2)
-
net9.0
- OrionGuard (>= 6.4.2)
- Swashbuckle.AspNetCore.SwaggerGen (>= 6.6.2)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.