添加项目文件。
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace IM.Commons
|
||||
{
|
||||
public class Result<T>(int code, string message, T? data = default)
|
||||
{
|
||||
public int Code { get; private set; } = code;
|
||||
public string Message { get; private set; } = message;
|
||||
public T? Data { get; private set; } = data;
|
||||
[JsonIgnore]
|
||||
public bool Succeeded
|
||||
{
|
||||
get => Code == (int)ResultCode.SUCCESS;
|
||||
}
|
||||
|
||||
public static Result<T> Success(T? data = default) => new((int)ResultCode.SUCCESS, ResultCode.SUCCESS.GetDescription(), data);
|
||||
|
||||
public static Result<T> Fail(ResultCode code) => new((int)code, code.GetDescription());
|
||||
public static Result<T> Fail(ResultCode code, string errorMsg) => new((int)code, errorMsg);
|
||||
public static Result<T> Fail<FuncT>(Result<FuncT> result) => new(result.Code, result.Message);
|
||||
}
|
||||
|
||||
public class Result
|
||||
{
|
||||
public static Result<T> Success<T>(T? data = default) => new((int)ResultCode.SUCCESS, ResultCode.SUCCESS.GetDescription(), data);
|
||||
|
||||
public static Result<object> Success() => new((int)ResultCode.SUCCESS, ResultCode.SUCCESS.GetDescription(), null);
|
||||
|
||||
public static Result<T> Fail<T>(ResultCode code) => new((int)code, code.GetDescription());
|
||||
public static Result<object> Fail(ResultCode code) => new((int)code, code.GetDescription());
|
||||
public static Result<T> Fail<T>(ResultCode code, string errorMsg) => new((int)code, errorMsg);
|
||||
public static Result<T> Fail<T, FuncT>(Result<FuncT> result) => new(result.Code, result.Message);
|
||||
public static Result<object> Fail<FuncT>(Result<FuncT> result) => new(result.Code, result.Message);
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user