69 lines
1.5 KiB
C#
69 lines
1.5 KiB
C#
namespace MyNewProjectName.Contracts.DTOs.Responses;
|
|
|
|
/// <summary>
|
|
/// Standard API response wrapper
|
|
/// </summary>
|
|
public class ApiResponse<T>
|
|
{
|
|
public bool Success { get; set; }
|
|
public string? Message { get; set; }
|
|
public T? Data { get; set; }
|
|
public List<string>? Errors { get; set; }
|
|
|
|
public static ApiResponse<T> SuccessResponse(T data, string? message = null)
|
|
{
|
|
return new ApiResponse<T>
|
|
{
|
|
Success = true,
|
|
Data = data,
|
|
Message = message
|
|
};
|
|
}
|
|
|
|
public static ApiResponse<T> ErrorResponse(string error)
|
|
{
|
|
return new ApiResponse<T>
|
|
{
|
|
Success = false,
|
|
Errors = new List<string> { error }
|
|
};
|
|
}
|
|
|
|
public static ApiResponse<T> ErrorResponse(List<string> errors)
|
|
{
|
|
return new ApiResponse<T>
|
|
{
|
|
Success = false,
|
|
Errors = errors
|
|
};
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Non-generic API response
|
|
/// </summary>
|
|
public class ApiResponse
|
|
{
|
|
public bool Success { get; set; }
|
|
public string? Message { get; set; }
|
|
public List<string>? Errors { get; set; }
|
|
|
|
public static ApiResponse SuccessResponse(string? message = null)
|
|
{
|
|
return new ApiResponse
|
|
{
|
|
Success = true,
|
|
Message = message
|
|
};
|
|
}
|
|
|
|
public static ApiResponse ErrorResponse(string error)
|
|
{
|
|
return new ApiResponse
|
|
{
|
|
Success = false,
|
|
Errors = new List<string> { error }
|
|
};
|
|
}
|
|
}
|