网站首页 网站源码
website
站点相关全部源代码,隐藏了一些关于服务器的信息
namespace Dpz.Core.Infrastructure;

#nullable enable


public class ResponseResult
{
    /// <summary>
    /// 是否成功
    /// </summary>
    public bool Success { get; set; }

    /// <summary>
    /// 消息
    /// </summary>
    public string? Message { get; set; }

    /// <summary>
    /// 状态码
    /// </summary>
    public int Code { get; set; }

    public static ResponseResult ToSuccess() => new() { Success = true };

    public static ResponseResult ToFail(string message, int code = 1) =>
        new()
        {
            Success = false,
            Message = message,
            Code = code,
        };
}

public class ResponseResult<T> : ResponseResult
{
    public T? Data { get; set; }

    public ResponseResult<T> SuccessResult(T? data)
    {
        Data = data;
        Success = true;
        return this;
    }

    public ResponseResult<T> FailResult(string message, int code = 1)
    {
        Success = false;
        Message = message;
        Code = code;
        Data = default;
        return this;
    }

    public static ResponseResult<T> ToSuccess(T? data) => new() { Success = true, Data = data };

    public new static ResponseResult<T> ToFail(string message, int code = 1) =>
        new()
        {
            Success = false,
            Message = message,
            Code = code,
            Data = default,
        };
}
⚠⚠    以下内容为AI分析的结果,请根据实际情况进行判断。

上述代码定义了一个用于处理响应结果的基础类 ResponseResult 及其泛型版本 ResponseResult<T>。这些类通常用于在应用程序中返回操作的结果,尤其是在 Web API 或服务中。以下是对代码的详细解释:

ResponseResult

  1. 属性:

    • Success: 一个布尔值,指示操作是否成功。
    • Message: 一个可选的字符串,提供有关操作的消息(例如错误信息)。
    • Code: 一个整数,表示状态码,通常用于指示操作的结果类型(例如,成功、失败、错误等)。
  2. 静态方法:

    • ToSuccess(): 返回一个表示成功的 ResponseResult 实例,Success 属性设置为 true
    • ToFail(string message, int code = 1): 返回一个表示失败的 ResponseResult 实例,Success 属性设置为 false,并且可以设置自定义的消息和状态码。

ResponseResult<T>

ResponseResult<T>ResponseResult 的泛型版本,允许在响应中包含数据。

  1. 属性:

    • Data: 一个可选的泛型属性,存储操作成功时返回的数据。
  2. 实例方法:

    • SuccessResult(T? data): 设置 Data 属性并将 Success 属性设置为 true,表示操作成功并返回数据。
    • FailResult(string message, int code = 1): 设置 Successfalse,并设置消息和状态码,同时将 Data 设置为默认值(通常为 null)。
  3. 静态方法:

    • ToSuccess(T? data): 返回一个表示成功的 ResponseResult<T> 实例,包含成功的数据。
    • ToFail(string message, int code = 1): 返回一个表示失败的 ResponseResult<T> 实例,包含失败的消息和状态码,同时 Data 设置为默认值。

总结

这些类的主要功能是提供一个统一的方式来表示操作的结果,包括成功与失败的状态、相关消息和数据。这种设计模式在 API 开发中非常常见,能够帮助开发者清晰地传达操作的结果,并且使得调用者能够方便地处理不同的响应情况。

loading