2011-10-05 33 views
0

基本上我想有辦法在我使用我的模式採取的方法替換變量

foreach(var sheet in Model.Sheets.Take(100)) 
{ 
... 
} 

選擇,我想用戶能夠指定此值,並使用重新加載頁面的數量採取方法,如何做到這一點?

回答

1

爲什麼不給你的控制器傳遞參數?

public ActionResult Index(int? toTake) 
{ 
    foreach(var sheet in Model.Sheets.Take(toTake != null ? toTake.Value : 100)) 
    { 
    } 

    return View(); 
} 
0

如果這是在你的視圖中,你做錯了。

在您的控制器操作中執行此.Take()位並將IEnumerable<T>傳遞給您的視圖。

例如:

public ActionResult Index(int? pageSize) 
{ 
    MyViewModel model = new MyViewModel(); 

    foreach(var sheet in Model.Sheets.Take(pageSize != null ? pageSize : 20)) 
    { 
     //yada yada yada. Do something here with sheet and model. 
    } 

    return View(model); 
}