解析器错误消息:文件“/TestSite/Default.aspx.cs”不存在

Posted

技术标签:

【中文标题】解析器错误消息:文件“/TestSite/Default.aspx.cs”不存在【英文标题】:Parser Error Message: The file '/TestSite/Default.aspx.cs' does not exist 【发布时间】:2009-02-11 20:52:06 【问题描述】:

短篇小说。 这个站点是由我的一个朋友创建的,他不太了解 C# 或 asp。并且最初是在 VS 2k3 中创建的。当我将其转换为 VS 2k8 时,这些错误开始出现,我还设法解决了其他编译​​问题(似乎已发布到 VS 2k8 想要的设计文件)

得到错误信息:

解析服务此请求所需的资源时出错。请查看以下特定的解析错误详细信息并适当地修改您的源文件。

来源错误:

第 1 行:<%@ Page Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="GuildStats._Default" %>

第 2 行:

第 3 行:&lt;asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="Server"&gt;

Defaults.aspx.cs

namespace GuildStats

    public partial class _Default : System.Web.UI.Page
    

默认值.aspx

<%@ Page Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="GuildStats._Default" %>

Site.master.cs

namespace GuildStats

    public partial class Site : System.Web.UI.MasterPage  

Site.master

<%@ Master Language="C#" AutoEventWireup="true" CodeFile="Site.master.cs" Inherits="GuildStats.Site" %>

【问题讨论】:

【参考方案1】:

Default.aspx 中将CodeFile 更改为CodeBehind。您可能必须对Site.master 执行相同的操作。

见:CodeFile and Code-Behind

【讨论】:

该链接如何解决此问题?它提到了 CodeFile 属性,但没有提到 CodeBehind。 MSDN 文档指出 CodeBehind 已过时,因此我试图弄清楚为什么切换回 CodeBehind 是一种解决方案。 他们为什么要不停地改名字……无论如何,这救了我的命【参考方案2】:

网站项目使用 CodeFile,Web 应用程序项目使用 CodeBehind。 CodeFile 需要源文件,页面加载时动态编译,CodeBehind 需要编译后的代码。

我的猜测是,当您将项目类型从 WebApp 更改为网站或反之亦然时,就会产生您的问题。如果这样做,则必须手动更改现有文件中的指令,新文件将自动具有正确的指令。

【讨论】:

以上是关于解析器错误消息:文件“/TestSite/Default.aspx.cs”不存在的主要内容,如果未能解决你的问题,请参考以下文章

Granite数据服务:错误:[debug(模块MyModuleFlex)]:无法创建解析器来加载消息传递配置

Global.asax 中的“解析器错误消息:无法加载类型”

解析器错误消息:无法识别的属性“targetFramework”。请注意,属性名称区分大小写

在解析错误时中止并显示有用的消息

带有所需子解析器的 Argparse

如何使用 PHP 跳过 XML 文件中的无效字符