ASP.NET页面上的当前上下文中不存在Label

时间:2011-06-23 01:34:37

标签: c# asp.net

有许多与此名称相同的问题,但我没有找到解决方案。

MasterPage.master:

<div id="dateShow"> 
    <asp:Label ID="lblDateShow" runat="server"></asp:Label>
</div>

MasterPage.master.cs:

protected void Page_Load(object sender, EventArgs e)
{
    lblDateShow.Text = DateTime.Now.ToShortDateString();
}

它发生在构建并向我显示错误,但如果我在没有构建的情况下运行(在运行之前 - >没有构建),它会显示日期。它只发生在包含我要添加的所有控件的母版页中,在其他页面上都可以正常工作。可能是什么问题?

错误消息是:

错误1当前上下文中不存在名称“lblDateShow”

长期描述:

警告2'c:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Temporary ASP.NET Files \ thegame \ 6da1e5d1 \ 9152b07 \ App_Web_tmu2ya5i.4.cs'中的类型'MasterPage'与导入的类型冲突'Master:'在'c:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Temporary ASP.NET Files \ thegame \ 6da1e5d1 \ 9152b07 \ App_Web_masterpage.master.cdcab7d2.k9aa16y-.dll'中。使用'c:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Temporary ASP.NET Files \ thegame \ 6da1e5d1 \ 9152b07 \ App_Web_tmu2ya5i.4.cs'中定义的类型。 c:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Temporary ASP.NET Files \ thegame \ 6da1e5d1 \ 9152b07 \ App_Web_tmu2ya5i.4.cs

我试图删除Temp文件,没有帮助..

UPD 我解决了这个问题。我有另一个masterpage2.master,不知怎的,他做了所有的问题。当我创建标签或其他控件时,他在第二个母版页中声明,我不知道它是怎么回事))

3 个答案:

答案 0 :(得分:8)

它发生在我身上,我花了几天时间才发现我还有一个页面,后面有相同的代码(CodeFile =“PageName.aspx.cs”),它没有控件ID。我刚删除了它,问题一起删除了。

答案 1 :(得分:3)

如果lblDateShow位于母版页的标记中,但似乎代码隐藏文件中不存在,则很可能是母版的designer.cs文件存在问题。是lblDateShow在那里实例化了吗?如果没有,您将需要重新生成设计器文件或手动添加标签。

答案 2 :(得分:2)

尝试将其放入正确的命名空间中。这是我的问题