public virtual void Delete(TEntity t, bool?forzarDelete = null) { if (Context.Entry(t).State == EntityState.Detached) { DbSet.Attach(t); } if (forzarDelete != null) { if (forzarDelete.Value) { DbSet.Remove(t); } } else { if (UtilRepo.HasMember(t, "Habilitado")) { this.Disabled(t); } else { DbSet.Remove(t); } } }
public virtual void Update(TEntity t) { if (UtilRepo.HasMember(t, "TSModificado")) { DbSet.Attach(t); Context.Entry(t).Member("TSModificado").CurrentValue = DateTime.Now; Context.Entry(t).State = EntityState.Modified; } else { DbSet.Attach(t); Context.Entry(t).State = EntityState.Modified; } }
//Esta función desabilita un registro dado public virtual void Disabled(TEntity TEntity) { if (UtilRepo.HasMember(TEntity, "TSEliminado")) { DbSet.Attach(TEntity); Context.Entry(TEntity).Member("Habilitado").CurrentValue = false; Context.Entry(TEntity).Member("TSEliminado").CurrentValue = DateTime.Now; Context.Entry(TEntity).State = EntityState.Modified; } else { DbSet.Attach(TEntity); Context.Entry(TEntity).Member("Habilitado").CurrentValue = false; Context.Entry(TEntity).State = EntityState.Modified; } }
public virtual TEntity Create(TEntity t) { try { if (UtilRepo.HasMember(t, "Habilitado")) { if (UtilRepo.HasMember(t, "TSCreate")) { Context.Entry(t).Member("TSCreate").CurrentValue = DateTime.Now; Context.Entry(t).Member("Habilitado").CurrentValue = true; } else { Context.Entry(t).Member("Habilitado").CurrentValue = true; } } var newEntry = DbSet.Add(t); return(newEntry.Entity); } catch { return(null); } }