Я работаю над приложением MVC3 и столкнулся с проблемой непреднамеренного кэширования объектов.
Мой код создает объекты из вызовов к отдельной настраиваемой DLL бизнес-логики.
Эта бизнес-логика DLL получает данные из базы данных.
После того, как я изменил данные в базе данных, я все еще вижу старые данные, даже после закрытия браузера и повторного запуска приложения. Это не проблема кэширования браузера, потому что я вижу это, когда отлаживаю в среде разработки.
В процессе разработки, если я остановлю сервер разработки asp.net, а затем перезапущу приложение, я получу новые данные.
В IIS, если я перезагружаю веб-сайт, я получаю новые данные.
Есть идеи, почему asp.net кэширует и повторно использует эти объекты, даже если они вышли из области видимости?
В бизнес-логике встроено некоторое кэширование, так что, возможно, это главная проблема. В этом случае, я предполагаю, что вопрос заключается в том, могу ли я как-то сказать asp.net уничтожить объекты после завершения сеанса.