API Reference ResultStatus - ulfbou/Zentient.Results GitHub Wiki
๐งฉ ResultStatus
API Reference
namespace Zentient.Results
๐ Summary
ResultStatus
is the default, immutable implementation of IResultStatus
. It encapsulates an integer Code
and a descriptive Description
representing the outcome of a result operation. Supports equality, comparisons, HTTP status translation, and custom status creation.
๐ Metadata
Property |
Value |
๐ฆ Assembly |
Zentient.Results.dll |
๐ Visibility |
public readonly struct |
๐งฑ Implements |
IResultStatus , IEquatable<ResultStatus> |
๐ Namespace |
Zentient.Results |
๐งพ Properties
Name |
Type |
Description |
Code |
int |
Numeric identifier of the status. |
Description |
string |
Human-readable textual description. |
๐ ๏ธ Constructors
ResultStatus(int code, string description)
Parameter |
Type |
Description |
code |
int |
Numeric status code. |
description |
string |
Textual description of status. |
Initializes a new ResultStatus
instance with the specified code and description.
๐งช Static Methods
ResultStatus.Custom(int code, string description)
Creates a custom user-defined status.
Parameter |
Type |
Description |
code |
int |
Custom status code. |
description |
string |
Custom description. |
Returns |
ResultStatus |
New status instance with specified code and description. |
|
IResultStatus.FromHttpStatusCode(int statusCode)
Maps an HTTP status code to an IResultStatus
.
Parameter |
Type |
Description |
statusCode |
int |
HTTP status code to map. |
Returns |
IResultStatus |
Corresponding IResultStatus instance. |
|
Uses HttpStatusCode.ToString()
for description and delegates to ResultStatuses.GetStatus
.
๐ Overridden Members
Method |
Returns |
Description |
ToString() |
string |
Returns (Code) Description format. |
Equals(object?) |
bool |
Compares with an object for equality. |
Equals(ResultStatus) |
bool |
Compares with another ResultStatus . |
GetHashCode() |
int |
Generates hash code from Code and Description . |
โ๏ธ Operators
Operator |
Returns |
Description |
== |
bool |
Equality comparison between instances. |
!= |
bool |
Inequality comparison. |
Both operators are null-safe.
๐ Best Practices
Scenario |
Recommendation |
Creating custom statuses |
Use ResultStatus.Custom or implement IResultStatus . |
HTTP status translation |
Use FromHttpStatusCode(int) for API error mapping. |
Consistency across results |
Reuse shared instances from ResultStatuses registry. |
๐งช Example
var status = ResultStatus.Custom(1001, "BusinessRuleViolation");
var result = Result.Failure(status, "You cannot delete this entity.");
๐ Related
IResultStatus
ResultStatuses
(factory and registry)
Result
HttpStatusCode