asp.net webforms模块和处理程序部分-是否需要删除?
下面是ASP.NET webforms web.config的默认配置,用于指定IIS 7(.5)下的处理程序和模块 添加自定义模块和处理程序时,我想知道在添加模块条目之前是否需要remove name=“custom module”。我找不到关于是否需要删除或为什么需要删除的更多信息。我看到一些例子,他们没有删除 我问这个问题的原因是我模模糊糊地记得我读过一些关于模块引用的东西,每次都会不断地添加相同的条目,而不是只有一个条目,最终会失败。但我现在到处都找不到 如果有人能证实,我们将不胜感激asp.net webforms模块和处理程序部分-是否需要删除?,asp.net,webforms,iis-7.5,httpmodule,web.config-transform,Asp.net,Webforms,Iis 7.5,Httpmodule,Web.config Transform,下面是ASP.NET webforms web.config的默认配置,用于指定IIS 7(.5)下的处理程序和模块 添加自定义模块和处理程序时,我想知道在添加模块条目之前是否需要remove name=“custom module”。我找不到关于是否需要删除或为什么需要删除的更多信息。我看到一些例子,他们没有删除 我问这个问题的原因是我模模糊糊地记得我读过一些关于模块引用的东西,每次都会不断地添加相同的条目,而不是只有一个条目,最终会失败。但我现在到处都找不到 如果有人能证实,我们将不胜感激
<system.webServer>
<validation validateIntegratedModeConfiguration="false"/>
<modules>
<remove name="ScriptModule" />
<add name="ScriptModule" preCondition="managedHandler" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</modules>
<handlers>
<remove name="WebServiceHandlerFactory-Integrated"/>
<remove name="ScriptHandlerFactory" />
<remove name="ScriptHandlerFactoryAppServices" />
<remove name="ScriptResource" />
<add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode"
type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode"
type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
</handlers>
</system.webServer>
查看MSDN,但在
中,您将看到以下内容:
有关详细信息,请参阅)。这些文件可以是machine.config
、根web.config
等。这些文件还可以包含模块和处理程序声明。添加
有助于避免与这些文件发生任何冲突 但我不是说两次使用相同的组合。如果必须添加自定义模块,是否需要先指定remove?我会确保它只在添加部分出现一次。在之前添加删除只是一种比抱歉更好的安全做法。如果您100%确定没有使用相同名称的声明来创建冲突,那么不,您不需要在添加它之前删除它。我更新了我的答案,说明了为什么使用
是一个好主意,即使您只声明了一次自己的自定义处理程序。您提到了哪种冲突?你知道会发生什么吗?应用程序会不能立即工作还是最终失败?你实际上不知道会发生什么。通常,应用程序可以工作,当它试图使用一个有冲突的处理程序时,它会出现错误,或者(不太常见)它可以工作,但会出现不希望出现的行为。