Как влияет время жизни статического класса в приложении asp.net без сохранения состояния?

StackOverflow https://stackoverflow.com/questions/691560

Вопрос

Я определил вспомогательный класс для отслеживания небольшого словаря элементов.он сохраняет эту информацию как статическое свойство, которое инициализируется в статическом конструкторе.список очень мал и никогда не изменится, поэтому я выбрал этот метод вместо XML или таблицы поиска в базе данных...

однако я хотел бы знать, сохранит ли это статическое свойство свои значения между страницами или даже внутри страниц, если asp.net должен быть без сохранения состояния?

например, я привязываю этот список к двум разным раскрывающимся спискам на своей странице.

DropDownList1.DataSource = Helper.MyList;
DropDownList2.DataSource = Helper.MyList;

Поскольку помощник статического класса вызывается два раза, его конструктор также вызывается дважды или он остается в области видимости на протяжении всего жизненного цикла страницы?

А что, если я перейду на следующую страницу и мне потребуется выполнить привязку снова, она все равно будет инициализирована или начнется заново?

Это было полезно?

Решение

Нет, это не будет инициализировать тип дважды.А Helper класс нужно будет повторно инициализировать только в следующий раз, когда вы получите новый AppDomain - либо потому, что приложение обновляется/перезапускается, либо из-за AppDomain переработка.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top