水晶报表图表出现红叉叉的解决方法

常见场景:

WebForm开发的水晶报表应用,本地调试正常,但是到了服务器上,工具栏可以正常显示,报表数据可以正常显示,唯一的问题就是图表的位置没有出现图,只是个红叉叉。

解决方法:

查看一下这个页面的HTML代码,在图表的位置,是类似于以下的一个图片

<img src="CrystalImageHandler.aspx?dynamicimage=cr_tmp_image_d587aabc-52c4-412b-b990-18dc8d0e8cb8.png" alt="图像" border="0" width="480px" height="288px" />

我们注意到CrystalImageHandler.aspx这个路径,是当前路径,但是该文件在我们的项目中又不存在。

查看能正常显示的图表项目的Web.config。会发现(本示例为VS2005+CR XI后的版本)

<system.web>

  
<httpHandlers>
    
<add verb="GET" path="CrystalImageHandler.aspx" type="CrystalDecisions.Web.CrystalImageHandler, CrystalDecisions.Web, Version=11.5.3700.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
  
</httpHandlers>
</system.web>

VS2005自带版本为:

代码
<httpHandlers> 
<add verb="GET" path="CrystalImageHandler.aspx" type="CrystalDecisions.Web.CrystalImageHandler, CrystalDecisions.Web, Version=10.2.3600.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/> 
</httpHandlers>

 

 

 

VS2008自带版本为

代码
<httpHandlers>
 
<add verb="GET" path="CrystalImageHandler.aspx" type="CrystalDecisions.Web.CrystalImageHandler, CrystalDecisions.Web, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
</httpHandlers> 

 

 

这么一小节(你实际显示的跟这个版本可能会有所不同)。这个是添加图表后,程序自动在该配置文件中增加的一个httphandler。

出现此问题的原因多半是因为手工编辑web.config时,遗漏了这个部分。将你调试时使用的web.config的这一小节拷贝到发布机上即可


20101216增补:

如果config文件中已经存在了这部分配置,仍然是红叉叉,那么试验下下面的方法:

自己在网站目录下新建了个CrystalImageHandler.aspx就好了。

以上方法来源于,http://topic.csdn.net/u/20100526/16/615aeaf7-1882-436b-ba6a-d834b17a826a.html 未经实际测试

posted @ 2008-11-20 07:16  阿泰  阅读(5886)  评论(7编辑  收藏  举报