public virtual bool Edit(T model) { if (db.Entry <T>(model).State == EntityState.Modified) { return(db.SaveChanges() > 0); } else if (db.Entry <T>(model).State == EntityState.Detached) { try { db.Set <T>().Attach(model); db.Entry <T>(model).State = EntityState.Modified; } catch (InvalidOperationException ex) { } return(db.SaveChanges() > 0); } return(false); }