【问题标题】:HTTPHandler tag in Web.Config breaks asmx FilesWeb.Config 中的 HTTPHandler 标记会破坏 asmx 文件
【发布时间】:2010-09-12 23:45:50
【问题描述】:

在我的 ASP.Net 1.1 应用程序中,我已将以下内容添加到我的 Web.Config(在 System.Web 标记部分中):

<httpHandlers>
  <add verb="*" path="*.bcn" type="Internet2008.Beacon.BeaconHandler, Internet2008" />
</httpHandlers>

这很好用,并且 HTTPHandler 对 .bcn 类型的文件起作用,并完成它的工作。但是由于某种原因,所有 ASMX 文件都停止工作。知道为什么会这样吗?

干杯 格雷格

【问题讨论】:

    标签: asp.net web-services configuration web-config httphandler


    【解决方案1】:

    我明白了... CQ 你在正确的轨道上.. 我确实需要再次添加 .asmx 处理程序,但 .net 1.1 特定的处理程序。最终代码如下:

    <httpHandlers>
      <add verb="*" path="*.bcn" type="Internet2008.Beacon.BeaconHandler, Internet2008" validate="false" />
      <add verb="*" path="*.asmx" type="System.Web.Services.Protocols.WebServiceHandlerFactory, System.Web.Services, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" validate="false"/>
    </httpHandlers>
    

    我希望没有其他文件类型因为这个声明而没有得到正确处理。 :|

    感谢您的帮助 格雷格

    【讨论】:

    • 哇哦,好吧,对不起,我没有完整的路径,但我真的很高兴你能成功!
    【解决方案2】:

    虽然我不知道我以前是否见过这种行为,但它听起来像是一个继承的 ,您可以将通用处理程序添加回来,让我为您找到代码。

    <add verb="*" path="*.asmx" type="System.Web.Services.Protocols.WebServiceHandlerFactory, System.Web.Services" validate="false">
    

    我认为这是正确的元素,试一试。

    编辑:这很奇怪,我在这台机器上没有 2003 的副本,所以我无法打开 1.1,但我认为这是正确的声明。您可以尝试将validate="false" 添加到每个元素中,看看是否会有所不同。

    【讨论】:

      猜你喜欢
      • 2013-01-14
      • 2015-08-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多