2013-01-22 30 views

回答

3

您可以使用Session變量:

ArrayList myArrayList = new ArrayList(); 
//add items to arraylist 
Session["MyArrayList"] = myArrayList; 

,然後簡單地圍繞切換它的第二頁上找回來:

ArrayList myArrayList = Session["MyArrayList"] as ArrayList; 
//check to see if arraylist is null before using it 
if (myArrayList != null) 
{ 
    //array list is not null, safe to use 
} 
+0

我建議使用'... = Session [「MyArrayList」]作爲ArrayList;'。這樣,如果由於某種原因會話變量爲空,您不會拋出錯誤。用戶總是喜歡優雅的錯誤處理:)。 – Destrictor

+0

好點,編輯以反映 – Sean

+0

如果有人使用Array List的上一頁公共屬性怎麼辦? –

1

即使單獨class,你想要的(除非它是一個靜態的屬性)不能直接發生什麼。您的對象的每個請求正在重新創建。

解決方法是將ArrayList存儲在Session中。查看會話狀態這個MSDN鏈接的詳細信息:http://msdn.microsoft.com/en-us/library/ms178581(v=vs.100).aspx

+0

這將有可能在不同的班,當他使用靜態變量。 – Destrictor

+0

確實。我將編輯以反映這一點。 –

2

爲此,您需要使用Session,下面的代碼從我身邊推薦:

您從其中轉到另一個頁面的Page1的代碼:

System.Collections.ArrayList objArrayList = new System.Collections.ArrayList(); 
     objArrayList.Add("DEMO1"); 
     objArrayList.Add("DEMO2"); 
     Session["ArrayList"] = objArrayList; 

代碼頁-2上,你是從另一個頁面重定向:

System.Collections.ArrayList objArrayList1 = Session["ArrayList"] as System.Collections.ArrayList; 
+0

交回帖子回來了嗎? Gaurav Rajput如果前一頁有ArrayList的公共屬性?? –

+1

@Abdul Majid:如果我正確理解你的觀點,那麼這種情況將會是這樣的:假設有兩個頁面Page1具有ArrayList類型和Page2的公共屬性。如果我們實現從頁面1到頁面2的跨頁面發佈,那麼這個公共ArrayList屬性也可以在頁面2上使用類似於PreviousPage._ArrayList的語法訪問。但爲此,我們將被限制使用跨頁面發佈。 –

相關問題