Я внес некоторые изменения на сайт и заметил, что когда я делаю изменения в базе данных, т.е. добавьте значение нового человека, имя человека не отображается в выпадающем списке.Понимание HttpContext.Current.Cache
Если я сброшу пул приложений несколько раз, имя наконец появится для меня. Хотя это не всегда кажется для других.
Это, кажется, управляется сильно кэшем, и я нашел следующее:
HttpContext.Current.Cache.Insert("PersohnList", d, Nothing,
DateTime.MaxValue, New System.TimeSpan(0, 30, 0),
Caching.CacheItemPriority.High, Nothing)
Я заметил несколько значений здесь интерес,
a) DateTime.MaxValue
b) New System.TimeSpan(0, 30, 0)
Будет ли кэш истекает через 30 минут и вставить имя нового человека или оно не истечет из-за DateTime.MaxValue.
Любые идеи?
Вы явно кэшируете список? Я не думаю, что он кэшируется по умолчанию. Как он инициализируется первоначально? Если он заполняется, пусть говорит Page_Load, то на каждом обновлении/новом сеансе он будет делать вызов базы данных. Если вы сохраняете его где-то на стороне сервера, это совсем другая проблема. – PoweredByOrange
Вы прочитали страницу MSDN для [Insert] (http://msdn.microsoft.com/en-us/library/05kd8d77 (v = vs.110) .aspx)? Также тот факт, что он переживает более одного сброса пула приложений, кажется, что ваша проблема заключается в кешировании на стороне клиента, а не на стороне сервера. –