public void Update(T entity) { var entry = _context.Entry <T>(entity); var pkey = entity.GetType().GetProperty("Id").GetValue(entity); if (entry.State == EntityState.Detached) { var set = _context.Set <T>(); if (set.Find(pkey) != null) { var attachedEntry = _context.Entry(set.Find(pkey)); attachedEntry.CurrentValues.SetValues(entity); } else { entry.State = EntityState.Modified; } } _context.SaveChanges(); }
public void Insert(TEntity obj) { persistContext.Set <TEntity>().Add(obj); persistContext.SaveChanges(); }
public RepositoryBase(PersistContext context) { this._context = context; this._dbSet = context.Set <T>(); }