2

所有-我正在尝试使用新的 ObjectCache 对象创建服务器端缓存。无论出于何种原因,以下内容都会引发异常......

_cache.Set(CacheKey.LOCATIONS, cachedLocations, DateTimeOffset.Now.AddHours(2));
                    if (!_cache.Contains(CacheKey.LOCATIONS))
                        throw new Exception("Did not add location to the cache.");

_cache在服务层通过如下方式实例化...

private ObjectCache _cache = MemoryCache.Default;

每次设置缓存时都会发生此异常,但第一次除外。例外是代码中显示的那个......“没有将位置添加到缓存中。”

---编辑注释。ObjectCache 是静态的,但由于 MemoryCache.Default 是静态的,因此不需要它是静态的。

4

1 回答 1

1

您应该使用 Add() 方法在缓存中创建一个新条目。Set() 方法涉及密钥已经存在。

于 2017-02-17T09:32:15.837 回答