현재 로그인 한 사용자 (일부 세션 정보)를 저장하는 Caching (CachingBL)에 대한 래퍼 클래스가 있습니다. 나는이 같은 캐시에 액세스 할 필요가asp.net - 세션 끝에서 캐시 객체 삭제
세션의 끝에서 :
는 CachingBL 래퍼에서 실제로 사용자의 사전이있다, 나는 다음과 같이 캐시에 그 사전을 걸었습니다 : HttpContext.Current.Cache.Insert(...)
를
var cacheBL = (CacheBL)HttpContext.Current.Cache.Get("MyCache_CacheSlot");
그러나 문제는 HttpContext.Current
이 비어있어 Cache
개체에 액세스 할 수 없다는 것입니다. 캐시 자체는 비어 있지 않지만 (테 스트), Session_End
에서 액세스하는 방법을 알아낼 수 없습니다.
그러나 세션과 캐시 항목이 다른 시간에 만료 될 수 있습니다. 정확하게 동일한 매핑이 필요합니다. 세션에있는 모든 사용자는 캐시 항목이 있어야합니다. 세션이 만료되는 시점에 사용자를 캐시에서 제거해야합니다. –