我使用ASPX和ASHX负责维护一个旧的遗留网站(可能在4 - 5年内未被触及)。该网站在服务器2003上运行得很好,但是网络主机迫使我们搬到了2008年。转移到2008年我们收到了这个错误
Config Error Cannot add duplicate collection entry of type 'add' with unique key attribute 'name' set to 'WebCoreModule.ashx_*'
178: <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" />
179: <add name="WebCoreModule.ashx_*" path="WebCoreModule.ashx" verb="*" type="Radactive.WebControls.ILoad.Core.WebCoreModule, Radactive.WebControls.ILoad.Core" preCondition="integratedMode,runtimeVersionv2.0" />
180: </handlers>
我已经做了很多研究并做了几次尝试改变并且使用_ *无济于事,我甚至尝试了另一篇文章的建议,这里建议我将<remove name "WebCoreModule.ashx_*" />
添加到处理程序的开头标签,但遇到了有限的成功。网站加载,但smtp.Send(msgMail)电子邮件不发送,并且不显示任何错误。通常,我会尝试自己解决这个问题,但因为它被认为是一个失败的场景(只是删除该行允许网站运行,但某些功能,例如电子邮件不起作用)我将不胜感激任何帮助。这是配置的其余部分
<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="WebCoreModule.ashx_*" path="WebCoreModule.ashx" verb="*" type="Radactive.WebControls.ILoad.Core.WebCoreModule, Radactive.WebControls.ILoad.Core" preCondition="integratedMode,runtimeVersionv2.0" />
</handlers>
如果您需要任何其他信息,请随时提出,我最终会陷入困境,并且会对管理层感到悲伤。谢谢!
答案 0 :(得分:1)
试试这个
<remove name="WebCoreModule.ashx_*" />
<add name="WebCoreModule.ashx_*" ...
答案 1 :(得分:1)
在完全剥离现有的电子邮件代码并添加新代码后,我发现问题是由默认配置了端口和SSLenable的旧服务器引起的,因为新服务器没有预配置这样的东西。我在web.config电子邮件部分中使用port = "587" Sslenable = true
解决了该问题。