【发布时间】:2015-11-23 07:09:12
【问题描述】:
我正在创建一个 HTTPModule,它可以重复使用几次,但参数不同。以请求重定向模块为例。我可以使用 HTTPHandler,但这不是它的任务,因为我的进程需要在请求级别工作,而不是在扩展/路径级别。
无论如何,我希望我的 web.config 是这样的:
<system.webServer>
<modules>
<add name="tpl01" type="TemplateModule" arg1="~/" arg2="500" />
<add name="tpl02" type="TemplateModule" arg1="~/" arg2="100" />
</modules>
</system.webServer>
但我能找到的大部分信息是this。我说,是的,我可以获得整个 <modules> 标签,但是我的 HTTPModule 的每个实例如何知道要采用哪些参数?如果我可以在创建时获得名称(tpl01 或 tpl02),我可以在之后按名称查找它的参数,但我没有在 HTTPModule 类中看到任何属性来获得它。
非常欢迎任何帮助。提前致谢! :)
【问题讨论】:
-
HttpModuleCollection 有一个 AllKeys 属性。对于每个键,您可以 Get(key) 并检查返回是否等于模块的 this 以确定模块的名称。
标签: c# asp.net web-config arguments httpmodule