NextGenSoftware.ErrorHandling 2.0.3

dotnet add package NextGenSoftware.ErrorHandling --version 2.0.3
                    
NuGet\Install-Package NextGenSoftware.ErrorHandling -Version 2.0.3
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="NextGenSoftware.ErrorHandling" Version="2.0.3" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="NextGenSoftware.ErrorHandling" Version="2.0.3" />
                    
Directory.Packages.props
<PackageReference Include="NextGenSoftware.ErrorHandling" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add NextGenSoftware.ErrorHandling --version 2.0.3
                    
#r "nuget: NextGenSoftware.ErrorHandling, 2.0.3"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package NextGenSoftware.ErrorHandling@2.0.3
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=NextGenSoftware.ErrorHandling&version=2.0.3
                    
Install as a Cake Addin
#tool nuget:?package=NextGenSoftware.ErrorHandling&version=2.0.3
                    
Install as a Cake Tool

NextGenSoftware.ErrorHandling

Structured error handling and the OASISResult pattern — the error propagation backbone of the OASIS Omniverse ecosystem (HoloNET, the OASIS API, STAR ODK, OurWorld).

NuGet License: MIT .NET

Part of the OASIS Omniverse v2.0 Reboot. Visit oasisomniverse.one.


Features

  • OASISResult<T> — null-safe async result type; return success or failure without throwing across API boundaries
  • OASISResult (non-generic) for void operations
  • Structured exception wrappers with rich context metadata
  • Consistent error propagation across all 85+ OASIS API packages and HoloNET
  • Integrates with NextGenSoftware.Logging
  • Multi-target: .NET 8, .NET 9, .NET 10

Installation

dotnet add package NextGenSoftware.ErrorHandling

Quick Start

using NextGenSoftware.ErrorHandling;

public async Task<OASISResult<MyData>> LoadDataAsync(string id)
{
    var result = new OASISResult<MyData>();
    try
    {
        result.Result = await _db.GetAsync(id);
    }
    catch (Exception ex)
    {
        result.Exception = ex;
        result.Message   = $"Failed to load {id}.";
        result.IsError   = true;
    }
    return result;
}

// Call site
var result = await myService.LoadDataAsync("abc123");
if (result.IsError)
    Console.WriteLine($"Error: {result.Message}");
else
    Process(result.Result);

OASISResult Properties

Property Type Description
Result T The returned value on success
IsError bool true if the operation failed
IsWarning bool true if a non-fatal warning occurred
Message string Human-readable error/success message
Exception Exception Underlying exception if any
InnerMessages List<string> Accumulated sub-messages from nested calls

MIT — Copyright (c) NextGen Software Ltd 2019 - 2026

Product 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net10.0

    • No dependencies.
  • net8.0

    • No dependencies.
  • net9.0

    • No dependencies.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on NextGenSoftware.ErrorHandling:

Package Downloads
NextGenSoftware.WebSocket

WebSocket library used for other NextGen Software libraries such as HoloNET.

NextGenSoftware.CLI.Engine

CLI Engine providing CLI utility/helper methods, colour, animation & more!

NextGenSoftware.OASIS.Common

Shared common utilities, helpers, and base types used across the entire OASIS ecosystem.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2.0.3 0 7/14/2026
2.0.2 0 7/14/2026
2.0.1 0 7/14/2026
1.0.0 799 5/26/2024

## v2.0.1 — OASIS Omniverse Reboot (2026)

Part of the biggest NextGen Software release in years! The full OASIS Omniverse ecosystem — powering Our World, the OASIS API (85+ NuGet packages), HoloNET (Holochain .NET client), STAR ODK, and more — has been fully relaunched and rebranded at https://oasisomniverse.one/

After years of continuous development this is the first major v2 release, representing a complete overhaul and modernisation of the entire NextGen Software foundation.

### What's New in v2.0.1
- Added .NET 10 support: now multi-targeting net8.0, net9.0, and net10.0 for future-proof compatibility
- Copyright updated: NextGen Software Ltd 2019 - 2026
- Part of the unified OASIS Omniverse ecosystem at https://oasisomniverse.one/
- Significantly improved error handling, robustness, and API consistency
- Full alignment with the new OASIS Omniverse architecture (WEB4 through WEB10 API tiers)
- All packages updated with correct metadata, repository URLs, and project URLs
- Multiple bug fixes and stability improvements
- Open source under MIT licence — https://github.com/NextGenSoftwareUK/NextGenSoftware-Libraries