我今天做没有意义的,我遇到了一个奇怪的问题。 这是一个总结:
里面的方法,我检查如下缓存项:
private async Task<RatesStatus> getRatesStatusAsync() {
//...
if (_currentHttpContext != null) {
//Here, I am checking for a Cached item
var cachedRatesStatusObj = HttpContext.Current.Cache[Constants.RATESSTATUS_CACHE_KEY_NAME];
if (cachedRatesStatusObj != null)
return (RatesStatus)cachedRatesStatusObj;
}
//...
cacheRatesStatusObject(ratesStatus);
//...
}
在这里, HttpContext.Current
如预期的ASP.NET应用程序中不为空。 然后,里面cacheRatesStatusObject
方法,我检查是否HttpContext.Current
为空或不是如下:
private void cacheRatesStatusObject(RatesStatus ratesStatus) {
//...
//Seeing if HttpContext.Current is null or not first.
//and it is null here...
if (HttpContext.Current == null)
return;
//...
}
它是空在那里。 不知道这里发生了什么。 有什么想法吗?