Example #1
0
        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;
                }
            }));
        }
Example #2
0
 public void UpdateProduct(ProductDto productDto)
 {
     ProductContext.Execute(db =>
     {
         db.Updateable <Product>(MapUtil.Map <Product>(productDto))
         .ExecuteCommand();
     });
 }
Example #3
0
 public void DeleteProduct(Guid productId)
 {
     ProductContext.Execute(db =>
     {
         db.Deleteable <Product>()
         .Where(i => i.Id == productId)
         .ExecuteCommand();
     });
 }
Example #4
0
 public List <ProductDto> GetProducts()
 {
     return(ProductContext.Execute(db =>
     {
         return db.Queryable <Product>()
         .Select <ProductDto>()
         .ToList();
     }));
 }