Вот мой кусочек кода:
List<Sale> sales = new List<Sale>();
if (Cache["Sales"] != null)
{
sales = (List<Sale>)Cache["Sales"];
}
else
{
...
Cache.Add("Sales", sales, null, DateTime.Now.AddMinutes(20),
Cache.NoSlidingExpiration, CacheItemPriority.Normal, null);
}
Когда я пытаюсь извлечь данные из кэша, мой объект "продажи" имеет значение null.Удивляясь, почему этот код используется вообще, я запустил отладчик в VS, чтобы посмотреть, что находится в объекте Cache.
Кэш содержит данные, которые мне нужны, но когда он получает данные из кэша, «продажи»все еще выходит как ноль.
Есть ли что-то, что я делаю здесь неправильно?
РЕДАКТИРОВАТЬ:
Я получаю эту ошибку при приведении:
[A] System.Collections.Generic.List 1[controls_mySales+Sale] cannot be cast to [B]System.Collections.Generic.List
1 [controls_mySales + Sale].Тип A происходит от «mscorlib, версия = 2.0.0.0, культура = нейтральная, PublicKeyToken = b77a5c561934e089» в контексте «LoadNeither» в расположении «C: \ WINDOWS \ assembly \ GAC_32 \ mscorlib \ 2.0.0.0__b77a5c561934e089 \ mscorlib.dll»,Тип B происходит от «mscorlib, версия = 2.0.0.0, культура = нейтральная, PublicKeyToken = b77a5c561934e089» в контексте «LoadNeither» в расположении «C: \ WINDOWS \ assembly \ GAC_32 \ mscorlib \ 2.0.0.0__b77a5c561934e089 \ mscorlib.dll»