public void Edit(TEntity entity) { var entry = _context.Entry <TEntity>(entity); var pkey = _dbSet.Create().GetType().GetProperty("Id").GetValue(entity); if (entry.State == EntityState.Detached) { var set = _context.Set <TEntity>(); TEntity attachedEntity = set.Find(pkey); // access the key if (attachedEntity != null) { var attachedEntry = _context.Entry(attachedEntity); attachedEntry.CurrentValues.SetValues(entity); } else { entry.State = EntityState.Modified; // attach the entity } } _context.SaveChanges(); }
public RepositoryBase() { _context = new DbaContext(); _dbSet = _context.Set <TEntity>(); }
internal RepositoryBase(DbaContext context) { _context = context; _dbSet = context.Set <TEntity>(); }
public void Remove(T element) { _dbContext.Set <T>().Remove(element); }