public static IResult <Product, IFailure> GetProduct(int productId) { var product = NonFunctionalDbWrapper.GetProduct(productId).Result; return(product != null ? product.ToSuccess <Product, IFailure>() : Failure.DataNotFoundFailureResult <Product>("Product", $"id = {productId}")); }
public static IResult <Product, IFailure> SaveProduct(Product product) { try { NonFunctionalDbWrapper.SaveAsync(product).Wait(); return(product.ToSuccess <Product, IFailure>()); } catch (AggregateException ex) when(ex.InnerException is ConflictException conflictEx) { return(Failure.ConflictFailureResult(conflictEx.GetReloadedModel <Product>())); } }