2011-06-23 41 views
6

有許多與此名稱相同的問題,但我沒有找到解決方案。標籤在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' 在當前上下文中

龍詳細描述不存在:

在「C警告2類型 '母版':\ 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_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 \框架\ v4.0.30319 \臨時ASP.NET文件\ thegame \ 6da1e5d1 \ 9152b07 \ App_Web_tmu2ya5i.4.cs

我試圖刪除臨時文件,並沒有幫助..

UPD我解決了這個問題。我有另一個masterpage2.master,不知何故,他做了所有的問題。當我創建標籤或其他控件時,他在第二個母版頁中聲明,我不知道它怎麼可能))

+0

lblDateShow在哪裏宣佈? – David

+0

聽起來像lblDateShow是在其他容器內。你能發佈整個主頁面標記嗎? – NotMe

+0

是不是一個聲明?你什麼意思? – RaShe

回答

2

如果lblDateShow是在您的母版頁的標記中,但它似乎不存在於代碼隱藏文件,那麼它很可能是您的母版頁的designer.cs文件的問題。在那裏實例化了lblDateShow?如果不是,則需要重新生成設計器文件或手動添加標籤。

+0

這個。您也可以嘗試在Visual Studio中打開母版頁,然後將其點擊到「設計」模式。這似乎經常會重新生成.designer.cs文件。 –

+0

你之前用什麼來構建這個代碼?我很好奇... – FishBasketGordo

8

它發生在我身上,我花了一些天,直到發現我有一個頁面(CodeFile =「PageName.aspx.cs」),它沒有控件ID。我剛刪除它,問題一起被刪除。

+0

這發生在我身上......有人提交了「Copy of xxx.ascx」文件,構建服務器抱怨xxx.ascx.cs文件。是一個很大的幫助。 – Holger

2

試着把它放在正確的命名空間。這是我的問題

相關問題