Я написал ASP.NET HttpModule, и у меня есть статический вспомогательный класс, который используется для загрузки и хранения данных конфигурации в течение всего срока службы запроса.HttpModule и статический класс, выполняют ли несколько запросов одни и те же статические данные?
Поскольку статические конструкторы должны быть без параметров, у меня есть статический метод SetConfigName, который я вызываю в начале обработки HttpRequest.
public static void SetConfigName (string configName)
{
// load data specific to given configName
}
Существуют также статические методы Get(), которые вызывается позже во время обработки HttpRequest.
Данные конфигурации, которые загружаются, могут быть разными для каждого запроса (на основе значений в URL-адресе), поэтому я делаю не хочу, чтобы другие запросы делили статические данные после вызова SetConfigName.
Итак, вопрос в том, выполняют ли несколько запросов одни и те же статические данные или каждый новый запрос получает отдельную копию статического класса? (А если данные передаются, как избежать этого? Это единственная альтернатива, чтобы сделать его не-статический класс?)
(Кстати, я не использую global.asax.)