using EnVisage.Models.Cache; using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace EnVisage.Code.Cache { public class ProjectAccessCache : Cache { protected override string CACHE_KEY { get { return "ProjectAccess"; } } protected override void SetValuesToCache() { using (EnVisageEntities context = new EnVisageEntities()) { var value = context.ProjectAccesses.AsNoTracking(). Select(p => new UserProjectAccess { PrincipalId = p.PrincipalId, ProjectId = p.ProjectId, Read = p.Read, Write = p.Write }).ToList(); CacheManager.Instance.AddToCache(CACHE_KEY, value); } } } }