2011-03-30 150 views
1

我正在編寫一個應用程序,其中需要將一個System.Collections.ArrayList數據作爲參數從一個控制器動作發送到另一個控制器動作。 我使用將ArrayList參數傳遞給控制器​​動作ASP.NET MVC

 
return RedirectToAction("action1","controller1", new { arrList = arrListInFirstAction}); 

但由於該ArrayList超出範圍在第一時間行動,在重定向到動作參數接收一個空參數。

有人可以幫我找到這個問題的答案。

謝謝。

回答

3

您無法將複雜類型作爲路由參數發送。你可以,但是,使用TempData集合,以保持該對象的一個​​請求,並在接下來的請求時,它會從集合被自動刪除

publci ActionResutl action() 
{ 
    TempData["arr"] = new int[]{1,2,3}; 
    return RedirectToAction("action1"); 
} 

Public ActionResult action1() 
{ 
    int[] arr = TempData["arr"]; 
    return View(); 
} 
+0

問題解決了...謝謝:) – Jake 2011-03-30 04:26:34

+0

@Amit這很容易,是吧? =) – Pete 2011-03-30 04:26:58

+0

@Pete:是的,這很容易:) – Jake 2011-03-30 04:40:55

相關問題