示例#1
0
        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);
            }
        }
示例#2
0
        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);
        }