Table of Contents

Class Result<T, E>

Namespace
NuvTools.Common.ResultWrapper
Assembly
NuvTools.Common.dll

Represents an operation result that returns success data (T) and can also capture a typed error payload (E) for APIs that return non-standard error contracts.

public class Result<T, E> : Result<T>, IResult<T, E>, IResult<T>, IResult

Type Parameters

T

Type of the success data.

E

Type of the typed error payload returned on failure.

Inheritance
Result<T, E>
Implements
IResult<T, E>
Inherited Members
Extension Methods

Properties

ErrorPayload

Strongly typed error payload provided by APIs that do not follow the default Result pattern. Only populated when the request fails and returns a different error model.

public E? ErrorPayload { get; set; }

Property Value

E

Methods

Fail(MessageDetail, T?, E?, ILogger?)

Creates a failure result with a single error message.

public static IResult<T, E> Fail(MessageDetail message, T? data = default, E? error = default, ILogger? logger = null)

Parameters

message MessageDetail
data T
error E
logger ILogger

Returns

IResult<T, E>

Fail(List<MessageDetail>?, T?, E?, ILogger?)

Creates a failure result with optional success data and typed error payload.

public static IResult<T, E> Fail(List<MessageDetail>? messages = null, T? data = default, E? error = default, ILogger? logger = null)

Parameters

messages List<MessageDetail>
data T
error E
logger ILogger

Returns

IResult<T, E>

Fail(string, T?, E?, ILogger?)

Creates a failure result with a simple string message.

public static IResult<T, E> Fail(string message, T? data = default, E? error = default, ILogger? logger = null)

Parameters

message string
data T
error E
logger ILogger

Returns

IResult<T, E>

FailNotFound(string, T?, E?)

Creates a "Not Found" (404) failure result.

public static IResult<T, E> FailNotFound(string message, T? data = default, E? error = default)

Parameters

message string
data T
error E

Returns

IResult<T, E>

Success(T?, MessageDetail?)

Creates a successful result with optional success data and message.

public static IResult<T, E> Success(T? data = default, MessageDetail? message = null)

Parameters

data T
message MessageDetail

Returns

IResult<T, E>

Success(T?, string)

Creates a successful result with data and a simple message.

public static IResult<T, E> Success(T? data, string message)

Parameters

data T
message string

Returns

IResult<T, E>