Class Result<T>
- Namespace
- NuvTools.Common.ResultWrapper
- Assembly
- NuvTools.Common.dll
Represents a generic operation result that carries a data payload along with success status and message details.
public class Result<T> : ResultBase, IResult<T>, IResult
Type Parameters
TThe type of data returned by the operation.
- Inheritance
-
Result<T>
- Implements
-
IResult<T>
- Derived
- Inherited Members
- Extension Methods
Examples
Example usage:
IResult<UserDto> result = await _userService.GetUserByIdAsync(1);
if (result.Succeeded)
{
Console.WriteLine($"User: {result.Data!.Name}");
}
else
{
logger.LogWarning(result.Message);
}
Remarks
This class provides a unified and type-safe way to return both data and status information from service or repository operations.
Properties
Data
The data returned by the operation, if applicable.
public T? Data { get; set; }
Property Value
- T
Methods
Fail(MessageDetail, T?, ILogger?)
Creates an error result from a single MessageDetail.
public static IResult<T> Fail(MessageDetail message, T? data = default, ILogger? logger = null)
Parameters
messageMessageDetaildataTloggerILogger
Returns
- IResult<T>
Fail(List<MessageDetail>?, T?, ILogger?)
Creates an error result with optional messages and data.
public static IResult<T> Fail(List<MessageDetail>? messages = null, T? data = default, ILogger? logger = null)
Parameters
messagesList<MessageDetail>dataTloggerILogger
Returns
- IResult<T>
Fail(List<string>, T?, ILogger?)
Creates an error result from a list of simple message strings.
public static IResult<T> Fail(List<string> messages, T? data = default, ILogger? logger = null)
Parameters
Returns
- IResult<T>
Fail(Exception, short, T?, ILogger?)
Creates an error result from an exception, with optional data and logging.
public static IResult<T> Fail(Exception exception, short level = 1, T? data = default, ILogger? logger = null)
Parameters
Returns
- IResult<T>
Fail(string, T?, ILogger?)
Creates an error result from a single message string.
public static IResult<T> Fail(string message, T? data = default, ILogger? logger = null)
Parameters
Returns
- IResult<T>
FailNotFound(string)
Creates a "Not Found" failure result with code "404".
public static IResult<T> FailNotFound(string message)
Parameters
messagestring
Returns
- IResult<T>
Success(MessageDetail?)
Creates a successful operation result containing only a message.
public static IResult<T> Success(MessageDetail? message)
Parameters
messageMessageDetail
Returns
- IResult<T>
Success(string)
Creates a successful operation result with a simple message string.
public static IResult<T> Success(string message)
Parameters
messagestring
Returns
- IResult<T>
Success(T?, MessageDetail?)
Creates a successful operation result containing optional data and message.
public static IResult<T> Success(T? data = default, MessageDetail? message = null)
Parameters
dataTmessageMessageDetail
Returns
- IResult<T>
Success(T?, string)
Creates a successful operation result containing data and a message string.
public static IResult<T> Success(T? data, string message)
Parameters
dataTmessagestring
Returns
- IResult<T>
ValidationFail(MessageDetail, T?, ILogger?)
Creates a validation failure result from a single MessageDetail.
public static IResult<T> ValidationFail(MessageDetail message, T? data = default, ILogger? logger = null)
Parameters
messageMessageDetaildataTloggerILogger
Returns
- IResult<T>
ValidationFail(List<MessageDetail>, T?, ILogger?)
Creates a validation failure result with message details.
public static IResult<T> ValidationFail(List<MessageDetail> messages, T? data = default, ILogger? logger = null)
Parameters
messagesList<MessageDetail>dataTloggerILogger
Returns
- IResult<T>
ValidationFail(List<string>, T?, ILogger?)
Creates a validation failure result from a list of message strings.
public static IResult<T> ValidationFail(List<string> messages, T? data = default, ILogger? logger = null)
Parameters
Returns
- IResult<T>
ValidationFail(string, T?, ILogger?)
Creates a validation failure result from a simple message string.
public static IResult<T> ValidationFail(string message, T? data = default, ILogger? logger = null)
Parameters
Returns
- IResult<T>