Как влияет время жизни статического класса в приложении asp.net без состояния? - PullRequest
1 голос
/ 28 марта 2009

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

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

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

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

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

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

1 Ответ

1 голос
/ 28 марта 2009

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

...