c# – 找不到ASP.NET母版页

我正在尝试让我的内容页面能够在母版页上访问ASP:Literal.

我有我的内容页面:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="viewProduct.aspx.cs" Inherits="AlphaPackSite.viewProduct" Title="Hi there!" %>
<%@ MasterType TypeName="Main" %>

然后我的主页名为Main.master:

<asp:Literal runat="server" ID="lblBasket" />

但是当我尝试做的时候从内容页面:

Master.basket.Text = "test";

我明白了:

Error 46 The type or namespace name
‘Main’ could not be found (are you
missing a using directive or an
assembly reference?)

错误发生在设计器页面上:

public new Main Master {
    get {
        return ((Main)(base.Master));
    }
}

我的主页代码背后是:

namespace AlphaPack.MasterPages
{
    public partial class Main : System.Web.UI.MasterPage
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            this.IsLoggedIn = Request.IsAuthenticated;
        }

        public bool IsLoggedIn
        {
            get { return this.ViewState["isLoggedIn"] as bool? ?? false; }
            set { this.ViewState["isLoggedIn"] = value; }
        }
    }
}

最佳答案 设计器是否在AlphaPack.MasterPages命名空间内?

MasterType不完全合格,是不是?你也不必提供路径吗? (不熟悉,对不起).

如果您使用MasterPageFile引用而不是MasterType,这会如何响应?

点赞