public IActionResult Map <TSource, TReturn>(SafeRunResult <TSource> result) { if (result.Success) { var transfer = _mapper.Map <TReturn>(result.Result); return(_owner.Ok(transfer)); } else { return(result.ErrorReturningResult); } }
public SafeRunResult <TReturn> SafeRun <TReturn>(Func <TReturn> runnable, HttpStatusCode statusCode = HttpStatusCode.InternalServerError) { var ret = new SafeRunResult <TReturn>() { Success = true }; try { ret.Result = runnable(); } catch (Exception ex) { ret.ErrorReturningResult = _enTierConfigurations.ExposesExceptions ? Error(statusCode, ex) : Error(statusCode); ret.Success = false; } return(ret); }