我用来获取HTTP模块的代码基本上是
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
,具体取决于我收到的字符串?
答案 0 :(得分:1)
HttpContext.Current.ApplicationInstance.Modules
这会返回一个HttpModuleCollection
对象。或者你想知道how to programmatically register HttpModules at runtime?