我被这个问题玩疯,我找了很多资料,也试着很多可能,很谢谢图表区的朋友们的帮忙,特别是泰哥和立双,给了很多帮助
http://blog.csdn.net/luols/archive/2010/11/17/6014022.aspx这个链接是解决的方法,刚开始我按照这个方案也没有解决,
纠结了很久,知道最近我把系统优化,最后的问题还是自己的代码身上,所以上面的方法是能够解决的。
故障描述:
VS2005的水晶报表在WEB应用程序中多次使用后,就会出现加载报表失败.重启WEB服务器又正常了.过一段时间又出同样问题
用户使用水晶报表的时候出现加载报表错误.
刚开始用户使用非常正常,但使用一天(该用户使用报表频率非常大)就会出现"报表加载失败",然后用户重启服务器这后又可以了
我发现在C:/WINDOWS/Temp这个临时文件里面有大量的水晶报表文件,每使用一次就会生成几个文件,
在电脑没有重新启动的情况下它不会被删除,而出现大量的无用文件,
在google里面搜了一圈发现也有人碰到这样的情况但回答的很模糊只是说要将水晶报表装载的文档关闭掉,
从这里可以看出出现这样的错误应该是程序员人为照成的.
具体解决如下:
1.ReportDocumen实例必须为类成员
private ReportDocument prtp = new ReportDocument();
2.使用完水晶报表必须关闭文件,这样子就不会在windows的临时文件里面产生.
private void Page_Unload(object sender, EventArgs e)
{
prtp.Dispose();
}
Page_Unload 事件是在页面完全显示的时候运行,这样子就解决了.
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/luols/archive/2010/11/17/6014022.aspx
再次谢谢各位!!