一开始在 webapp 的网站上做了一个 RDLC 的报表,在开发环境上跑得很好,但是一部署到服务器上就显示不出报表了。
只在浏览器上提示脚本错误,找不到 ReportViewer1 这个控件...
然后到网上找了好些资料,又到MSDN上下了N个版本的reportviewer.exe ,全部提示版本不兼容,靠。。。我都怀疑是MSDN里面全部都指向同一个文件了。。。
后来终于在 C:\Program Files(X86)\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages\ReportViewer\
下找到ReportViewer.exe和ReportViewerLP.exe,安装之,但是访问之后还是一样不给面子。。。
接下来,又从服务器上提取了 reportview 的DLL,
Microsoft.ReportViewer.Common.dll、
Microsoft.ReportViewer.ProcessingObjectModel.dll、
Microsoft.ReportViewer.WebForms.dll
Microsoft.ReportViewer.WinForms.dll
使用下面的命令复制出DLL文件。
xcopy C:\WINDOWS\assembly\GAC_msil D:\soft\GAC_MSIL /E /c
后来又看到有文章说webapp 下要把 rdlc 的属性改为 内容,而不是嵌入的资源, 可惜,发布上去之后还是不行。。。
搞七搞八之后,还是不行,真是鸟了。。。
最后没有办法了,重新开了一个 网站项目,不撮用 webapp 了,直接新建 asp.net reports 网站,部署到服务器上之后,再把上文提到的四个DLL复制到项目的bin文件夹下,访问一下,还报错,不过这回倒是好解决,把网站的应用程序池改为经典模式就好了。
泪奔。。。