You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
58 lines
1.5 KiB
58 lines
1.5 KiB
namespace CoreAgent.Domain.Models
|
|
{
|
|
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 ApiResponse()
|
|
{
|
|
Success = true;
|
|
Errors = new List<string>();
|
|
}
|
|
|
|
public static ApiResponse<T> CreateSuccess(T data, string? message = null)
|
|
{
|
|
return new ApiResponse<T>
|
|
{
|
|
Success = true,
|
|
Data = data,
|
|
Message = message
|
|
};
|
|
}
|
|
|
|
public static ApiResponse<T> CreateError(string message, List<string>? errors = null)
|
|
{
|
|
return new ApiResponse<T>
|
|
{
|
|
Success = false,
|
|
Message = message,
|
|
Errors = errors ?? new List<string>()
|
|
};
|
|
}
|
|
}
|
|
|
|
public class ApiResponse : ApiResponse<object>
|
|
{
|
|
public new static ApiResponse CreateSuccess(string? message = null)
|
|
{
|
|
return new ApiResponse
|
|
{
|
|
Success = true,
|
|
Message = message
|
|
};
|
|
}
|
|
|
|
public new static ApiResponse CreateError(string message, List<string>? errors = null)
|
|
{
|
|
return new ApiResponse
|
|
{
|
|
Success = false,
|
|
Message = message,
|
|
Errors = errors ?? new List<string>()
|
|
};
|
|
}
|
|
}
|
|
}
|