Я добавляю элементы в кеш как этот
public void Put<T>(string key, T value, string region)
{
HttpRuntime.Cache.Insert(GetCacheKey(key, region),
value, null, GetTtl(),
DefaultSlidingExpiration);
}
Я помещаю список строк в кеш как этот. Длина списка равна 3. Когда я его сразу укажу и получу, то получу правильный счет, и в кеше будет три элемента.
public T Get<T>(string key)
{
return (T)HttpRuntime.Cache.Get(GetCacheKey(key));
}
Если я обновлю страницу, то в кеше будет только 1 элемент.
Я вызываю метод кэширования пут как
_udeCache.Put(key, value);
Где значение - это объект типа
Guardian
, которыйимеет список членов строк. Вопрос только со строками. Кэширование списка строк не работает, а остальные члены объекта кэшируются правильно.
Когда я получаю, я звоню как
_udeCache.Get<Guardian>(key);