Класс на моем веб-сайте ASP.NET должен обращаться к таблице базы данных несколько раз для каждого запроса. Таблица базы данных должна редко меняться, если вообще когда-либо. Может пару раз в месяц.
В статическом конструкторе класса таблица извлекается из БД и кэшируется в статической локальной переменной. Всякий раз, когда классу необходимо получить доступ к таблице, он просто использует кешированную статическую версию.
Мой вопрос касается срока службы этой кэшированной статической версии таблицы.
Я понимаю, что он извлекается при первом создании экземпляра класса или использовании статического метода в классе. Но как часто это происходит на веб-сервере? Что, если таблица изменится, и мы захотим сбросить эту статическую версию таблицы?
По сути, мне интересно, эта таблица извлекается один раз, а затем обновляется только каждый раз, когда я перезапускаю IIS? Что, в отношении сайта и IIS, вызовет сброс этого статического класса, что вызовет повторную выборку статической таблицы?