using System; using System.Collections.Generic; using System.Data.Entity; using System.Data.Entity.Validation; using System.Linq; using System.Text; using System.Threading.Tasks; namespace CAPI.Custom.Data.Repositories { public class Repository : ReadOnlyRepository where TContext : DbContext, new() where TEntity : class { public virtual TContext Context => db; /// /// Mark entity as Added - Applies on Save() /// /// public virtual void Add(TEntity entity) { db.Set().Add(entity); } /// /// Mark entity as Deleted - Applies on Save() /// /// public virtual void Remove(TEntity entity) { db.Set().Remove(entity); } /// /// Mark entity as Edited - Applies on Save() /// /// public virtual void Edit(TEntity entity) { db.Entry(entity).State = EntityState.Modified; } /// /// Apply changes /// /// public virtual int Save() { return db.SaveChanges(); } } }