SgtMapper 1.0.0
dotnet add package SgtMapper --version 1.0.0
NuGet\Install-Package SgtMapper -Version 1.0.0
<PackageReference Include="SgtMapper" Version="1.0.0" />
<PackageVersion Include="SgtMapper" Version="1.0.0" />
<PackageReference Include="SgtMapper" />
paket add SgtMapper --version 1.0.0
#r "nuget: SgtMapper, 1.0.0"
#:package SgtMapper@1.0.0
#addin nuget:?package=SgtMapper&version=1.0.0
#tool nuget:?package=SgtMapper&version=1.0.0
Sgt. Mapper's Lonely Exceptions Band
Uncomplicated exception mapping for ASP.NET Core.
What does it do
SgtMapper is installed as a middleware in your application which automatically catches uncaught exceptions and maps it to a response using one of the user-defined exception mappers.
How to use it
- Add the nuget package.
dotnet app package SgtMapper
- Configure SgtMapper in your Startup.cs.
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
...
app.WithSgtMapper();
}
- Define custom exception mappers.
[ExceptionMapper]
public class MyExceptionMapper : ExceptionMapper<MyException> {
public object Map(MyException exception) {
return new { Message = "got a simple exception!" };
}
}
Advanced Settings
None! SgtMapper is designed to be as simple to use as possible. There is nothing more to configure than what is described in this README. Exception mappers will be automatically detected in your project, and will be instantiated directly, or using ASP.NET's dependency injection mechanism, should they require constructor parameters.
Running the tests
Sgt. Mapper has an Anachronos testing suite which can be found in the e2e_tests
directory. Running the tests requires python3.6 or later.
pip install -r e2e_tests/requirements.txt
sh run_tests.sh
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. 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 was computed. 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 was computed. 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. |
.NET Core | netcoreapp2.2 is compatible. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
-
.NETCoreApp 2.2
- Microsoft.AspNetCore.App (>= 2.2.8)
- Newtonsoft.Json (>= 12.0.3)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.