public ProductDto AddProduct(ProductDto product) { return(ProductContext.Execute(db => { var productEntity = MapUtil.Map <Product>(product); try { db.Ado.BeginTran(); productEntity.Id = Guid.NewGuid(); var newProduct = MapUtil.Map <ProductDto>(db.Insertable(productEntity).ExecuteReturnEntity()); _onAddProduct.Run(() => newProduct); db.Ado.CommitTran(); return newProduct; } catch (Exception e) { db.Ado.RollbackTran(); throw e; } })); }
public void UpdateProduct(ProductDto productDto) { ProductContext.Execute(db => { db.Updateable <Product>(MapUtil.Map <Product>(productDto)) .ExecuteCommand(); }); }
public void DeleteProduct(Guid productId) { ProductContext.Execute(db => { db.Deleteable <Product>() .Where(i => i.Id == productId) .ExecuteCommand(); }); }
public List <ProductDto> GetProducts() { return(ProductContext.Execute(db => { return db.Queryable <Product>() .Select <ProductDto>() .ToList(); })); }