2014-02-25 81 views
0

我最近從Windows窗體切換到ASP.NET Web窗體,並遇到了一些我不希望遇到的問題。在良好的Web窗體中,我可以在Form類中創建一個字段並分配給它。所以如果我想讓一個控件在一個事件上產生一個標誌(比如說用戶按鈕點擊),我可以聲明布爾值並從我的表單方法中指定它。然後我可以從不同事件的不同方法檢查標誌的狀態。 它看起來不像Web窗體那麼多。我的字段(或全局變量,如果您願意)的值從我初始化它們的那一刻起保持不變。 這可能很簡單,但對我來說這是一個令人沮喪的問題。我可以在會議中存儲我的頭銜,但我認爲這不是一個正確的方法。問題是我需要存儲很多變量,因爲我爲SQL接口應用程序編寫代碼。從來沒有在Windows窗體和Web窗體中的單個問題我一直拉我的頭髮。 最終我需要存儲對象以重用它們,比如LINQ to SQL類對象,所以我非常感謝一些指導。ASP.NET中的變量

+1

之前繼續閱讀你應該閱讀關於ASP.Net webforms頁面循環,特別是Post-Back上發生的事情。 –

回答

1

你也應該閱讀有關國家的管理視圖狀態一樣,會話等...

3

我建議您查看PostBacks,Page生命週期以及ASP.NET如何處理客戶端請求。爲了更好地理解ASP.NET表單,您應該花時間閱讀頁面生命週期,事件以及它們被觸發的順序。這樣你就明白了爲什麼看起來你的變量沒有被更新。

1

把你不想按鈕點擊後執行下列條件您的Page_Load內容:

if (!IsPostBack) 
{ 
    // do something 
    return; 
}