Exemple #1
0
 protected virtual T ExecuteTransactional <T>(Func <T> codetoExecute)
 {
     try
     {
         using (TransactionScope scope = new TransactionScope())
         {
             var r = codetoExecute.Invoke();
             scope.Complete();//Ew3a Tensa
             return(r);
         }
     }
     catch (DbEntityValidationException dbEx)
     {
         foreach (var validationErrors in dbEx.EntityValidationErrors)
         {
             foreach (var validationError in validationErrors.ValidationErrors)
             {
                 _tracer.LogError($"Property: {validationError.PropertyName} Error: {validationError.ErrorMessage}", dbEx);
             }
         }
         throw dbEx;
     }
     catch (Exception ex)
     {
         this._tracer.LogError(ex.Message, ex);
         throw ex;
     }
 }
Exemple #2
0
        public virtual void Remove(TEntity item)
        {
            _tracer.LogInfo("Remove called");

            if (item == (TEntity)null)
            {
                var err = new ArgumentNullException("item", "Argument is null");
                _tracer.LogError(err.GetType().ToString(), err);
            }

            IDbSet <TEntity> objectSet = CreateSet();

            objectSet.Attach(item);
            objectSet.Remove(item);
            UnitOfWork.Commit();
        }