fix: always wrap responses in ApiResponse<T>
Success responses now use ApiResponse<T>{ Success=true, Data=T }
instead of returning raw T — consistent shape for all outcomes.
Ref: IT-628
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
@@ -17,7 +17,14 @@ public abstract class ApiControllerBase : ControllerBase
|
||||
protected IMediator Mediator { get; }
|
||||
|
||||
protected IActionResult FromServiceResult<T>(ServiceResult<T> result) =>
|
||||
result.IsSuccess ? Ok(result.Result) : MapServiceError(result.Error!);
|
||||
result.IsSuccess
|
||||
? Ok(new ApiResponse<T> { Success = true, Data = result.Result })
|
||||
: MapServiceError(result.Error!);
|
||||
|
||||
protected IActionResult CreatedFromServiceResult<T>(ServiceResult<Guid> result, string actionName, Func<Guid, T> routeValues) =>
|
||||
result.IsSuccess
|
||||
? CreatedAtAction(actionName, routeValues(result.Result), new ApiResponse<Guid> { Success = true, Data = result.Result })
|
||||
: MapServiceError(result.Error!);
|
||||
|
||||
protected IActionResult MapServiceError(ServiceError error)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user