Exemplo n.º 1
0
 protected virtual async Task OnAfterDelete(GridDeleteComponent <T> component)
 {
     if (AfterDelete != null)
     {
         await AfterDelete.Invoke(component, _item);
     }
 }
Exemplo n.º 2
0
        public virtual void Delete()
        {
            if (Session == null)
            {
                throw new SessionNotInstantiatedException();
            }

            if (OnDelete != null)
            {
                OnDelete.Invoke(this, new Events.DataObjectOnDeleteEventArgs());
            }
            m_objectState = DataObjectState.Deleted;
            Session.Delete(this);

            if (AfterDelete != null)
            {
                AfterDelete.Invoke(this, new Events.DataObjectAfterDeleteEventArgs());
            }
        }
Exemplo n.º 3
0
 public void Delete()
 {
     Serializer.Delete(fileName, folderName, () => { BeforeDelete?.Invoke(); }, () => { AfterDelete?.Invoke(); });
 }
Exemplo n.º 4
0
        public virtual TransactionResult Delete(T entity, string headerkeyvalue = null, bool useLog = true)
        {
            if (Context.Database.Connection.State != ConnectionState.Open)
            {
                Context.Database.Connection.Open();
            }

            TransactionScope scope = new TransactionScope();

            try
            {
                var keyvalue = entity.GetValue(MasterKey.IsNullOrEmpty() ? GetKeys[0] : MasterKey);
                var row      = Find(entity);
                entity = row; Context.Entry(entity).State = EntityState.Deleted;
                if (BeforeDelete != null)
                {
                    var eventUseData = new EventUseData();
                    BeforeDelete.Invoke(entity, Context, eventUseData);
                    if (eventUseData.Cancel)
                    {
                        scope.Dispose();
                        return(eventUseData.Message);
                    }
                }

                //if (_user.FollowUp && useLog)
                //{
                //    Context.LogEntity(entity, _user, GetKeys[0], _formType, headerkeyvalue, headerkeyvalue);
                //}
                Context.SaveChanges();

                //var lkpWebControllers = Context.lkp_WebControllers.FirstOrDefault(c => c.formType == _formType); //c.ControllerName.Equals(_controllername, StringComparison.OrdinalIgnoreCase) ||
                //if (lkpWebControllers != null)
                //{
                //    int formType = lkpWebControllers.formType;
                //    RemoveAttachments(formType, keyvalue.ToString());
                //}

                scope.Complete();
                if (AfterDelete != null)
                {
                    EventBase eventMessage = new EventBase {
                        Message = TransactionResult.None
                    };
                    AfterDelete.Invoke(entity, Context, eventMessage);
                    if (eventMessage.Message != TransactionResult.None)
                    {
                        return(eventMessage.Message);
                    }
                }
                return(TransactionResult.DeleteSuccess);
            }
            catch (Exception ex)
            {
                HandleException(ex);
                scope.Dispose();
                Context.Database.Connection.Close();
                //Logger.LogSystemError(_user.UserId.ToString(), ex);
                return(TransactionResult.DeleteFailed);
            }
            finally
            {
                scope.Dispose();
            }
        }
 protected virtual void OnAfterDelete(T entity)
 {
     AfterDelete?.Invoke(entity);
 }