You can try using functions like these in a static helper class: /// /// Determines if the user is currently logged in /// /// The login name of the user to check /// True of the user is currently logged into the application, false otherwise internal static bool IsUserLoggedIn(string userName) { return (HttpContext.Current.Cache["userName"] != null); } /// /// Sets up the cache settings to track if the user is logged in or not /// /// The login name of the user internal static void SetLoginState(string userName) { HttpContext.Current.Cache.Add(userName, true, null, Cache.NoAbsoluteExpiration, new TimeSpan(0, 30, 0), CacheItemPriority.Normal, null); } /// /// Resets the sliding expiration of the login state by resetting the value /// /// The name of the user to set internal static void TickleLoginState(string userName) { if (HttpContext.Current.Cache[userName] == null) SetLoginState(userName); else HttpContext.Current.Cache[userName] = true; } /// /// Removes the user's key from the login state /// /// The login name of the user internal static void ClearLoginState(string userName) { HttpContext.Current.Cache.Remove(userName); } Jim Conigliaro jconigliaro@ieee.org