DiagnosableExceptions 0.1.0
dotnet add package DiagnosableExceptions --version 0.1.0
NuGet\Install-Package DiagnosableExceptions -Version 0.1.0
<PackageReference Include="DiagnosableExceptions" Version="0.1.0" />
<PackageVersion Include="DiagnosableExceptions" Version="0.1.0" />
<PackageReference Include="DiagnosableExceptions" />
paket add DiagnosableExceptions --version 0.1.0
#r "nuget: DiagnosableExceptions, 0.1.0"
#:package DiagnosableExceptions@0.1.0
#addin nuget:?package=DiagnosableExceptions&version=0.1.0
#tool nuget:?package=DiagnosableExceptions&version=0.1.0
DiagnosableExceptions
DiagnosableExceptions is a lightweight .NET library that turns exceptions into structured, documented, and diagnosable errors.
Instead of throwing ad-hoc messages, the library helps you define errors as explicit concepts with diagnostics and documentation directly in code.
It is especially useful for systems where supportability, troubleshooting, and operational clarity matter.
Key ideas
DiagnosableExceptions allows you to:
- define structured exceptions with stable error codes
- attach diagnostics and investigation leads
- keep error documentation close to the code
- generate human-readable documentation automatically
Errors become documented knowledge about your system, not just runtime failures.
Example
return DescribeError.WithTitle("Temperature below absolute zero")
.WithDescription("This error occurs when trying to instantiate a temperature with a value that is below absolute zero.")
.WithRule("Temperature cannot go below absolute zero because absolute zero is the point where particles have minimum possible energy.")
.WithDiagnostics(ValueObjectDiagnostic.Diagnostic)
.WithExamples(
() => BelowAbsoluteZero(-1, TemperatureUnit.Kelvin),
() => BelowAbsoluteZero(-280, TemperatureUnit.Celsius));
This produces structured documentation tied directly to the exception definition.
When to use DiagnosableExceptions
This library is particularly useful when:
- building complex business systems
- designing domain-driven models
- improving error observability
- supporting production troubleshooting
- generating living documentation from code
Documentation
Full documentation and guides are available on GitHub:
| 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.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- No dependencies.
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 |
|---|---|---|
| 0.1.0 | 110 | 3/11/2026 |
Initial stable release of DiagnosableExceptions.