1
我有同樣的問題,因爲這post但answer不起作用.... 的方法,沒有超載「尋呼機」需要「4」的論點我用老MVCContrib 難道或答案已棄用?怎麼做分頁和篩選在MVC應用程序
我的代碼如下所示: 在控制器
public ActionResult Index(int? clubid,int? page)
{
List<aspnet_Users> memberList = new List<aspnet_Users>();
IEnumerable enumerable;
if (!clubid.HasValue)
{
enumerable = aspnet_Users.Find(User.Identity.Name).Club != null ? aspnet_Users.FindAllByClubId(aspnet_Users.Find(User.Identity.Name).Club.Id) : aspnet_Users.FindAll();
}
else
{
if (clubid == 0)
{
enumerable = aspnet_Users.FindAll();
}
else
{
enumerable = aspnet_Users.FindAllByClubId(clubid.Value);
}
}
ViewData["clubid"] = clubid;
foreach (aspnet_Users member in enumerable)
{
memberList.Add(member);
}
return View(memberList.AsPagination(page ?? 1, 10));
}
鑑於
<h2>Index</h2>
<% using (Html.BeginForm()) {
ArrayList clubs=new ArrayList();
clubs.Add(new Club(0, "Toate"));
clubs.AddRange(Club.FindAll());
%>
<%= Html.DropDownList("ClubId", new SelectList(clubs, "Id", "Name", (Model == null ? 0 : aspnet_Users.Find(Page.User.Identity.Name).Club != null ? aspnet_Users.Find(Page.User.Identity.Name).Club.Id : 0)))%>
<input type="submit" value="Filtreaza" />
<% } %>
<table>
<tr>
<th>Action</th>
<th>
UserName
</th>
<th>
Club
</th>
.....
<%=Html.Encode(item.Male?"Male":"Female")%>
</td>
<td>
<%=Html.Encode(item.BirthDay.HasValue?item.BirthDay.Value.ToString(ConfigurationManager.AppSettings["DateFormat"], CultureInfo.InvariantCulture):"")%>
</td>
</tr>
<% }%>
</table> <%= Html.Pager(Model)%>
如果我篩選結果更改與下拉列表中clubid選擇的值不會傳遞到下一個頁面...
下一頁的鏈接是會員/索引?頁面= 2,我想成員/索引?clubid = 1 & page = 2
我試圖與 <%= Html.Pager(ViewData.Model.PageSize,ViewData.Model.PageNumber,ViewData.Model.TotalItemCount,新的{類別名=計算機[ 「clubid」]})%> 但我得到的編譯錯誤
的方法,沒有超載 '尋呼機' 需要 '4' 參數
我檢查,我有最新的版本OG mvccontrib(1.0.0.916)
10X起初我並不理解你的答案(我愚蠢....)codeplex&1.0.0.916已過時.... 這裏是最新的 http://github.com/mvccontrib/MvcContrib /樹/主 – bogdanbrudiu 2009-09-10 16:09:18