本帖最后由 kwyseven 于 2015-01-11 20:52:17 编辑

解决方案 »

  1.   

    注意如果IIS使用.net4.0以上版本的框架,<system.web>中的httpHandlers节点就没有用了,而应该使用微软专为4.0以上版本设计的新节点
    <system.webServer>来配置ashx的handlers
      

  2.   

    是已经发布到IIS中没有效果,还是压根在VS2013里面调试就没有效果?
      

  3.   

    在VS2013中就没效果,发布到IIS中也试过,也没效果
    另外调试的时候运行的是VS2013默认的IIS Express 
      

  4.   

    修改 ISAPI设置,把jpg格式映射到.net 上面
      

  5.   

    system.webServer 节中的某些设置只适用于 IIS 7.0 集成模式,而不适用于经典模式。具体而言,如果应用程序正在经典模式下运行,则会忽略 Web.config 文件的 system.WebServer 节中指定的所有托管代码模块和处理程序。与 IIS 的早期版本相同,托管代码模块和处理程序必须在 system.web 节的 httpModules 和 httpHandlers 元素中定义。
      

  6.   

    恩,这个明白,Config文件里默认已有说明
      

  7.   

    对的,修改IIS。有一个ISAPI的设置
      

  8.   

    在VS2013中就没效果,发布到IIS中也试过,也没效果
    另外调试的时候运行的是VS2013默认的IIS Express “但是用Visual Studio 2008同样的代码就一切OK。”考虑可能是你的IIS Express设置问题吧,我这里没有装2013,你仔细看看它的设置配置。如果发布到IIS没效果的话,是要看你的IIS版本的,如果是7.0 则发布后是不需要你手动配置节handler的,只需要处理映射ashx即可。
      

  9.   

    我还没发布到IIS,就在VS2013离里调试都没效果,
    可能是我哪里设置有问题,下来再仔细检查一下
      

  10.   

    在VS2013中就没效果,发布到IIS中也试过,也没效果
    另外调试的时候运行的是VS2013默认的IIS Express “但是用Visual Studio 2008同样的代码就一切OK。”考虑可能是你的IIS Express设置问题吧,我这里没有装2013,你仔细看看它的设置配置。如果发布到IIS没效果的话,是要看你的IIS版本的,如果是7.0 则发布后是不需要你手动配置节handler的,只需要处理映射ashx即可。
    恩,我昨天晚上试过把IIS Express 配置文件里的 模式从集成模式改为经典,还是没有解决,抽空要重新建立一个项目重新试试,也有可能是项目哪里设置有问题,挺奇怪的