private IEnumerable <T> GetDataForRuntimeCache <T>() where T : class { var key = Thread.CurrentPrincipal.Identity.Name; var result = cache.GetCachedItem <T>(key); if (result == null) { Console.WriteLine("From DB"); result = GetDataFromDB <T>(); cache.AddItemToCache(key, result); } else { Console.WriteLine("From cache"); } return(result); }