0
PagedListPagerはコントローラー内の実際のアクションを起動しません。インデックスのポストアクションは、pagedlistpagerによって呼び出されることはありません。これは私のメソッドです。PagedListPagerはコントローラー内の関連アクションを起動しません。
// Get
public ActionResult Index(string searchItem = "")
{
var categories = _categoryService.GetAllCategories(new GetCategoriesInput { Filter = searchItem.ToLower() });
var model = categories.ToPagedList(1, 10);
return View(model);
}
[HttpPost]
public ActionResult Index(string searchItem, int? page)
{
if (page == null)
{
var categories = _categoryService.GetAllCategories(new GetCategoriesInput { Filter = searchItem.ToLower() });
var model = categories.ToPagedList(1, 10);
return View(model);
}
else
{
var categories = _categoryService.GetAllCategories(new GetCategoriesInput { Filter = searchItem.ToLower() });
var model = categories.ToPagedList((int)page, 10);
return View(model);
}
}
最後に私のビューページ。
@using PagedList.Mvc;
@using PagedList;
@model IPagedList<Categories.CategoryListDto>
<div class="text-center">
@Html.PagedListPager(Model, page => Url.Action("Index", "Category", new { page = page }))
</div>
誰かが私に欠けているものを指摘できますか?どんな助けもありがたい。
あなたは '[HttpPost]'でマークされた方法を打つことを期待していますか? (それは '' [HttpGet] 'メソッドに行き、' int?page'パラメータと関連するコードをそのメソッドに追加する必要があります - POSTメソッドを削除する必要があります) –
はい私はそのメソッドにヒットすると思います。それはなぜでしょうか?私は別のタスクのためにそのメソッドを活用しています。 – user3055125
これは 'PagedList.MVC'のやり方ではないので、GETメソッドに行きます。 –