public async Task <TResponse> Handle(TRequest request, CancellationToken cancellationToken, RequestHandlerDelegate <TResponse> next) { try { return(await next()); } catch (Exception e) { return(DefaultResponse.Failed(request, e) as TResponse); } }
public async Task <TResponse> Handle(TRequest request, CancellationToken cancellationToken, RequestHandlerDelegate <TResponse> next) { if (_fluentValidator != null) { var validationResult = _fluentValidator.Validate(request); if (!validationResult.IsValid) { return((DefaultResponse.Failed(validationResult)) as TResponse); } } return(await next()); }