2011-11-24 52 views
0

我知道這是非常基本的,但爲什麼母版頁中的變量在子頁面中失去其價值?主頁面變量值丟失

例如,如果我有

[masterpage] 

public string userId 

... set userId in masterpage 


[child page] 

Master.userId // userId will always be empty? 

回答

2

因爲這是一個無國籍的範例。如果你想保持回發之間的那些價值觀,你只有幾個選擇:

  1. 會話狀態
  2. 視圖狀態
  3. 數據庫
  4. 的JavaScript /隱藏值
+0

由於某種原因,我想到馬像繼承一樣的頁面... – chobo

+0

@chobo真正的錯誤是假設繼承意味着你的變量在後發之間仍然存在。他們不。那部分你永遠無法擺脫 –

3

不要使用母版頁來存儲有關用戶的信息 - 你的頁面重新加載後不會持續存在。

如果您需要存儲一些用戶特定信息,請使用Session對象來存儲它。

Here就是一個例子。

1

我說試試使用Session["userId"]="..."和otherpage.aspx =>Session[userId].ToString()將得到值