public void Committed(DbTransaction transaction, DbTransactionInterceptionContext interceptionContext) { var context = interceptionContext.DbContexts.FirstOrDefault(); if (context != null) { var sets = context.GetObjectContext().ObjectStateManager .GetObjectStateEntries(EntityState.Added | EntityState.Deleted | EntityState.Modified) .Select(x => x.EntitySet).Distinct().ToList(); sets.ForEach(x => QueryCacheManager.ExpireTag(QueryCacheManager.PrefixTagSet + x.Name)); } }