Mico.Demo/Microservice.Common/ApiResponse.cs

74 lines
1.8 KiB
C#

using System;
namespace Microservice.Common
{
/// <summary>
/// 标准化 API 响应格式
/// </summary>
/// <typeparam name="T">响应数据类型</typeparam>
public class ApiResponse<T>
{
/// <summary>
/// 状态码
/// </summary>
public int StatusCode { get; set; }
/// <summary>
/// 响应消息
/// </summary>
public string Message { get; set; }
/// <summary>
/// 时间戳
/// </summary>
public DateTime Timestamp { get; set; }
/// <summary>
/// 数据负载
/// </summary>
public T Data { get; set; }
/// <summary>
/// 构造函数
/// </summary>
public ApiResponse()
{
Timestamp = DateTime.UtcNow;
}
/// <summary>
/// 构造函数
/// </summary>
/// <param name="statusCode">状态码</param>
/// <param name="message">响应消息</param>
/// <param name="data">数据负载</param>
public ApiResponse(int statusCode, string message, T data)
{
StatusCode = statusCode;
Message = message;
Data = data;
Timestamp = DateTime.UtcNow;
}
}
/// <summary>
/// 非泛型 API 响应格式
/// </summary>
public class ApiResponse : ApiResponse<object>
{
/// <summary>
/// 构造函数
/// </summary>
public ApiResponse() : base()
{ }
/// <summary>
/// 构造函数
/// </summary>
/// <param name="statusCode">状态码</param>
/// <param name="message">响应消息</param>
/// <param name="data">数据负载</param>
public ApiResponse(int statusCode, string message, object data) : base(statusCode, message, data)
{ }
}
}