код я использовал, чтобы получить модули HTTP в основномЕсть ли лучший способ получить соответствующий раздел модулей из web.config?
HttpModulesSection modules = ((SystemWebSectionGroup)config.GetSectionGroup("system.web")).HttpModules;
// Depending on what we need to do...
//modules.Modules.Add(CreateSomeModule());
//modules.Modules.Remove("SomeOtherModule");
Это работало отлично до тех пор IIS7. Команда перенастройки %SystemRoot%\system32\inetsrv\appcmd migrate config "website/"
перемещает модули в system.webServer
, поэтому мой код теперь обновляет неправильный раздел.
Есть ли встроенный способ получения соответствующей секции модуля, которая должна быть изменена? Или мне нужно добавить чек на Request.ServerVariables["SERVER_SOFTWARE"] и вернуть system.web
/system.webServer
в зависимости от строки, которую я возвращаю?
Просьба пояснить, что вы делаете, со списком модулей. –
@John, мы создаем новый HttpModuleAction, а затем добавляем его в коллекцию HttpModules. Обновлен вопрос, чтобы показать более четкий пример. – Brandon
Почему вы редактируете web.config? Кроме того, какой код вы делаете? Тот же веб-сайт, которому принадлежит web.config? –