如何修复ASP.NET错误“文件’nnn.aspx’没有预编译,不能被请求

前端之家收集整理的这篇文章主要介绍了如何修复ASP.NET错误“文件’nnn.aspx’没有预编译,不能被请求前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个VS 2005网站,我发布使用“发布网站”,我清除所有三个复选框。我也有一个部署项目,挑选已发布的文件并创建一个MSI。然后,我将该软件包安装在单独的测试服务器上。

换句话说,整个网站是预编译的。但是,当我去名为“服务”的特定子文件夹中的任何.aspx文件时,我得到一个HttpException:

System.Web.HttpException: The file ‘/myapp/Services/mypage.aspx’ has not been pre-compiled,and cannot be requested.

如果我去一个.aspx文件在其他文件夹,无论是根或其他子文件夹,它正常工作。

mypage.aspx本身的内容是:<%@ Page Language =“C#”AutoEventWireup =“true”CodeFile =“mypage.aspx.cs”Inherits =“Services_mypage”%>

在/ myapp / bin文件夹中,我可以看到一个mypage.aspx.989dc2fb.compiled文件。它的内容似乎指向一个特定的程序集,也存在于bin文件夹中。

为什么会出现此错误? .compiled文件在那里,并且程序集在那里,并且所讨论的类型存在于该程序集中(我可以在对象浏览器中看到它)。它是关于.compiled文件名称内容的东西吗?我有错误的版本吗? .compiled文件中的似乎随机数是什么意思,它是很重要的?

我还想提一下,这个问题突然出现,我不知道什么改变可以做,因为它在几天前正常工作(但据我所知,没有)。

解决方法

我没有这个错误,但后一个小谷歌我发现了这个链接,我不知道你是否已经看过它: http://forums.asp.net/t/956297.aspx

编辑(添加关键文字):

This error will come when a reference is specified in web.config and deployment folder/site does not contain these dlls installed in the system or bin folder does not contain them(if they are private assemblies).
For Example: (add assembly=”Namespace1.NameSpace2,Version=x.x.x.x,Culture=neutral,PublicKeyToken=31bf3856ad364e35″/)
if your web.config contains any assemblies like this and deployed server doesnot contain these assembiles in bin or GAC,then this error will occur.

人们报告,目标服务器上缺少的程序集最终成为根本原因,在他们的情况下,但他们有与你相同的错误。奇怪的。

也许这是问题?

猜你在找的asp.Net相关文章