2011-04-29 80 views
2

我正在使用ASP.NET应用程序的VS2008。母版页给出错误

我的解决方案资源管理器中具有层次结构是这样的:

enter image description here

的启动页,Default.aspx的,将显示一个登录表单。当我按下登录按钮时,应打开名称为selectCompany的另一个页面。 selectCompany是主页面为Master1.Master的Web内容表单。但它是不开放,而不是我收到此错误:

Parser Error 
Description: An error occurred during the parsing of a resource required to service this request. Please review the following specific parse error details and modify your source file appropriately. 

    Parser Error Message: Could not load type 'FlexStock.Forms.master1'. 

    Source Error: 

    Line 1: <%@ Master Language="C#" AutoEventWireup="true" CodeBehind="~/Forms/selectCompany.aspx" Inherits="FlexStock.Forms.master1" %> 
    Line 2: 
    Line 3: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 


    Source File: /Forms/master1.Master Line: 1 

Master1.master的第一行是这样的:

<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="master1.master.cs" Inherits="FlexStock.Forms.master1" %> 

和Web内容形式,selectCompany.aspx的第一线,是这样的:

<%@ Page Title="" Language="C#" MasterPageFile="~/Forms/master1.Master" AutoEventWireup="true" CodeBehind="selectCompany.aspx.cs" Inherits="FlexStock.Forms.selectCompany" %> 

我不是以下哪里是问题。

+0

它真的是一个Web应用程序项目吗?因为我没有看到你的bin文件夹。 – Louis 2011-04-29 07:20:06

+0

@Louis是的,它是一个Web应用程序。我可以通过Windows资源管理器看到bin文件夹,但不能通过VS.上图是VS解决方案资源管理器。 – RKh 2011-04-29 07:33:26

回答

3

确保类名Inhertis -part你所陈述的页面指令匹配您的代码隐藏文件中的类的名称。

Master1.master:

<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="master1.master.cs" Inherits="FlexStock.Forms.master1" %> 

Master1.Master.cs:

namespace FlexStock.Forms { 
    public class master1 { 
     /* ... */ 
+0

我将master1.Master移动到根文件夹并更新了这行:Inherits =“FlexStock.master1”,现在它给出错误:'FlexStock.master1'在这里是不允许的,因为它没有扩展类'System.Web.UI。母版”。 – RKh 2011-04-29 07:46:12

+0

我也将master1.Master.cs更改为:命名空间FlexStock。 – RKh 2011-04-29 07:46:56

+1

我想说你的错误表明有其他类命名为相同的东西,他们正在碰撞。否则,请确保您的FlexStock.master1实际上继承了System.Web.UI.MasterPage。 – 2011-04-29 08:38:16

0

你是否建立了你的项目没有任何错误/警告?

错误说,它无法找到代码隐藏类FlexStock.Forms.master1这样的问题将有可能在master1.Master.csdesigner.cs - 在这里你可能已经改变了命名空间或类名W/O使得在标记相同的变化。还是有一些编译错误和VS无法生成组件(或无法把它放在bin文件夹)

+0

它构建没有错误。现在它给错误:FlexStock.master1'在这里是不允许的,因为它没有扩展类'System.Web.UI.MasterPage'。 – RKh 2011-04-29 07:40:02

0

如果你能看到在资源管理器的bin文件夹,但不是在VS,尝试 “包括” 在你的项目。

也许将文件夹拖到解决方案资源管理器中,然后右键单击它并包含它。