API Reference ResultStatusExtensions - ulfbou/Zentient.Results GitHub Wiki
API Reference: ResultStatusExtensions
1. ResultStatusExtensions
1.1. Overview
- Namespace:
Zentient.Results - Type:
Static Class - Summary: Provides extension methods for
IResultStatus, offering convenient utility functions to interact with or convert result status objects.
1.2. Design Philosophy / Rationale
ResultStatusExtensions follows the common .NET pattern of using extension methods to add functionality to existing types (in this case, IResultStatus) without modifying their original definition. This keeps the IResultStatus interface clean and focused on its core contract, while providing practical utilities that enhance developer experience and simplify common tasks, such as mapping a result status to an HTTP status code.
2. Methods
2.1. ToHttpStatusCode(this IResultStatus status)
- Signature:
public static int ToHttpStatusCode(this IResultStatus status) - Summary: Converts an
IResultStatusinstance to its corresponding integer HTTP status code. - Parameters:
status(this IResultStatus): TheIResultStatusinstance to convert.
- Return Value: (
int): The integer value of theStatus.Codeproperty. - Behavior: This method simply returns the
Codeproperty of theIResultStatusobject, which is typically designed to align with HTTP status codes for standard outcomes. - Example Usage:
IResultStatus successStatus = ResultStatuses.Success; int httpCode = successStatus.ToHttpStatusCode(); // httpCode will be 200 IResultStatus notFoundStatus = ResultStatuses.NotFound; int notFoundCode = notFoundStatus.ToHttpStatusCode(); // notFoundCode will be 404
7. Remarks / Additional Notes
- Convenience: This extension method provides a direct and readable way to extract the HTTP status code from any
IResultStatusimplementation, making it particularly useful when building web API responses or integrating with HTTP-aware clients. - Consistency: It reinforces the convention that the
Codeproperty ofIResultStatusshould be an HTTP-compatible status code for standard results.
Last Updated: 2025-06-08 Version: 0.3.0