未预编译文件“/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控件的事,后来采用上面的链接重新下载了一版进行安装,问题解决。
未预编译文件“/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控件的事,后来采用上面的链接重新下载了一版进行安装,问题解决。
相关文章推荐
- 未预编译文件“/default.aspx”,因此不能请求该文件
- 未预编译文件“.aspx”,因此不能请求该文件
- 未预编译文件“/xxxx/aaa.aspx”,因此不能请求该文件错误
- 执行.aspx文件出错:由于无法创建应用程序域,因此未能执行请求。
- "未预编译文件 因此不能请求该文件"问题处理
- VS2010发布.NET2.0网站,出现“未预编译文件* 因此不能请求该文件”的解决办法
- ZT iis中执行.aspx文件出错:由于无法创建应用程序域,因此未能执行请求。
- VS2010发布.NET2.0网站,出现“未预编译文件* 因此不能请求该文件”的解决办法
- iis中执行.aspx文件出错:由于无法创建应用程序域,因此未能执行请求。
- iis中执行.aspx文件出错:由于无法创建应用程序域,因此未能执行请求。
- ASP.NET最误导人的错误提示:“未预编译文件,因此不能请求该文件”
- ckeditor+ckfinder 由于文件系统的限制,该请求不能完成
- PS常见错误-无法完成请求,因为文件格式模块不能解析该文件
- 求助:VS2008调试时不能编辑.aspx.cs文件
- 文件中的类都不能进行设计,因此未能为该文件显示设计器。设计器检查出文件中有以下类: FormMain --- 未能加载基类“WinForm.Win.FormsBase.FormMainBase”。请确保已引用该程序集并已生成所有项目
- 文件中的类都不能进行设计,因此未能为该文件显示设计器。设计器检查出文件中有以下类: FormMain --- 未能加载基类“WinForm.Win.FormsBase.FormMainBase”。请确保已引用该程序集并已生成所有项目
- 由于无法创建应用程序域,因此未能执行请求。错误: 0x80070002 系统找不到指定的文件
- nginx处理firefox的POST请求可能遇到的问题:小文件可以提交,大文件不能提交
- 不能访问共享的文件,电脑提示“您没有权限访问//(路径)。请与网络管理员联系请求访问权限”的解决办法
- 由于无法创建应用程序域,因此未能执行请求。错误: 0x80070002 系统找不到指定的文件