results.joeget
2.0.0
dotnet add package results.joeget --version 2.0.0
NuGet\Install-Package results.joeget -Version 2.0.0
<PackageReference Include="results.joeget" Version="2.0.0" />
<PackageVersion Include="results.joeget" Version="2.0.0" />
<PackageReference Include="results.joeget" />
paket add results.joeget --version 2.0.0
#r "nuget: results.joeget, 2.0.0"
#:package results.joeget@2.0.0
#addin nuget:?package=results.joeget&version=2.0.0
#tool nuget:?package=results.joeget&version=2.0.0
Joeget.Results
A simple and extendable implementation of the result pattern for .NET.
Overview
Joeget.Results provides a standardized way to represent operation outcomes, encapsulating both success and error states, with optional data and error details.
This pattern helps you write cleaner, more robust, and more testable code by making success and failure explicit.
Installation
Install via NuGet Package Manager:
dotnet add package results.joeget
Or via the NuGet UI in Visual Studio.
Usage
Basic Result
Use SuccessResult, or derived types of the ErrorResult to represent the outcome of operations.
using ResultPatternJoeget.Results;
// Success without data
Result result = new SuccessResult();
// Success with data
Result<T> result = new SuccessResult<(T)data>();
// Error with reason. Example given with the InternalErrorResult type
Result error = new InternalErrorResult("An unexpected error occurred");
Error Types
The library provides several error result types for common scenarios:
InternalErrorResult– For unexpected or server-side errors.NotFoundErrorResult– When a resource is not found.AuthenticationErrorResult– For authentication or authorization failures.ValidationErrorResult– For input or business rule validation errors.
All error results inherit from ErrorResult, which includes a Reason property describing the error.
Custom Error Results
You can extend ErrorResult to define your own error types:
public class CustomErrorResult : ErrorResult
{
public CustomErrorResult(string reason) : base(reason) {}
}
Target Framework
- .NET 9
License
MIT
Links
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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 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. |
-
net9.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.