asp.net mvc - статический конструктор - PullRequest
1 голос
/ 19 декабря 2008

Я хочу задать вопрос о asp.net mvc

  1. Статический конструктор будет инициировать каждый пользовательский запрос?
  2. Является ли обмен статическими данными для каждого пользователя?

Ответы [ 2 ]

5 голосов
/ 19 декабря 2008

Этот ответ является полностью общим и не только для ASP.NET MVC.

  1. Статические конструкторы будут запускаться не более одного раза для каждого домена приложения. Гарантируется, что он запускается перед любым статическим доступом или доступом к экземпляру этого класса. Так что нет, он не будет вызываться для каждого запроса.

  2. Да, статические данные передаются через весь домен приложения. Каждый домен приложения будет иметь различные статические данные. Поэтому, если вы не работаете в сценарии веб-сада или веб-фермы, он доступен для всех пользователей. Примечание: если вы объявите ваши статические поля как ThreadStatic, они будут доступны только для одного потока, что, вероятно, не имеет большого смысла в приложении ASP.NET.

0 голосов
/ 19 декабря 2008

Если я правильно понимаю ваш вопрос:

  1. Да, у вас есть global.aspx, который содержит обработчики событий для того, что вы ищете.
  2. Кэш приложения даст вам то, что вы ищете. Application.Cache или что-то, что я не могу набрать из памяти ...

Приветствия и счастливого Рождества (если применимо)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...