您的位置:首页 > 编程语言 > ASP

未预编译文件“/default.aspx”,因此不能请求该文件

2013-06-09 14:38 1601 查看
程序发布时大部分网页能打开,但远程打开reportviewer的网页出现:

未预编译文件“/default.aspx”,因此不能请求该文件。

从网上查找了各种原因,通用的解决方法是:

 
今天我们公司的网站,突然打不开了,进入服务器看了下,详细错误信息,显示“未预编译文件“/Index.aspx”,因此不能请求该文件”的错误,在网上查了下,说是有很多的原因,根本就不是那些问题,后来通过多次尝试,终于解决,现将网上的方法,以及我解决的方法总结如下。
1.未对项目进行引用或者控件未注册,丢失对相应DLL文件的引用。
在解决方案里点击右键---〉添加引用----〉
也可以在工具像里面添加  添加选项卡-----------> 选择项,找到文件。
页面后台文件添加using命名空间,然后就可以直接调用了。
如果是自定义控件的话,在页面register或者在web.config中注册一下,然后就可以象系统的控件一样调用了。
2.DLL文件本身问题
把DLL控件项目的AssemblyInfo.cs当中的AssemblyCulture留空。
重新生成网站,更新引用文件
这是网上的解决方法,总之就是缺少部分编译后的文件,未Publish部分文件。
这个时候你就要检查在发布的时候有没有发布成功,有没有错误信息,如有错误,肯定是你的原代码有问题。
我的问题是,我在更新网站时,只更新DLL文件,没有全部更新,以前我在发布的时候,没有勾选“允许更新此预编译站点”这个选项,但是这次,我勾选了,这两种发布方式的区别想必大家都知道,却没有把相应的aspx,ashx等文件更新,从而导致了这个错误。找到了问题症结所在,就好解决了,重新发布,不要勾选“允许更新此预编译站点”,将DLL更新都服务器就好了,问题解决。
---------------------------------------
后来通过http://www.cnblogs.com/jintan/archive/2008/06/12/1218079.html解决
Reporting Services的确是个不错的东西,特别是VS2008下更显得完美了,而且ASP.net下的ReportViewer也支持打印的功能了,上个版本是不直接支持的。

关于如何使用RS的文章,aspnetx老大翻译的这篇文章不错。只是在部署上遇到了一些麻烦,特别是对中文支持上,下面谈谈几种解决方案。

VS 2005下的部署实际已经很简单了。

1.安装ReportViewer.exe,或者直接下载Microsoft Report Viewer Redistributable 2005 SP1 (完全安装) 安装。

2.再去MS网站下载语言包(ReportViewerLP.exe),在服务器上安装就可以了。

VS2008下ReportViewer的部署:

1.下载Microsoft Report Viewer Redistributable 2008(2.8 MB)在服务器上安装。

2.由于MS官方网站没有提供VS2008 ReportViewer的语言包下载,所以就只能靠自己了。

    需要两个dll:
                Microsoft.ReportViewer.WebForms.resources.dll

                Microsoft.ReportViewer.Common.resources.dll

        如果是Winform使用ReportViewer,则需要Microsoft.ReportViewer.WinForms.resources.dll

        这几个dll实际上是资源文件编译成的dll,然后复制到运行ReportViewer 的网站下的的bin目录,就可以了,

    或者可以加到GAC中,这样就不需要每个网站的bin下都复制这几个dll.

    关于获取这几个dll?如果安装了Vs 2008的机器上都会有的,最直接的办法就是在C:\WINDOWS\assembly下可以看到
 


   

直接用命令: xcopy
C:\WINDOWS\assembly\GAC_msil c:\GAC_MSIL /E /c

可以复制所有GAC_msil 下的所有dll

另一种解决方案:英文操作系统下Report Viewer控件客户端工具栏中文的解决办法

应用这个方案可以自定义toolbar上的信息,但是需要设置当前的Culture为zh_CN

-------------------------------------------------------------------------------------------------------

 

上面是网上的查找的解决方法,我服务器上本来安装了reportviewer控件,以为不是reportviewer控件的事,后来采用上面的链接重新下载了一版进行安装,问题解决。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐