2017-04-04 2 views
0

をPARAMSを追加し、ビューファイルの私のページへのリンクでは、私が持っている:今ページングリンク(.NET MVC)へ

フィルタによるところが
Page @(Model.PageCount < Model.PageNumber ? 0 : Model.PageNumber) of @Model.PageCount 
@Html.PagedListPager(Model, page => Url.Action("Index", 
    new { page, sortOrder = ViewBag.CurrentSort, currentFilter = ViewBag.CurrentFilter, numberPerPage = ViewBag.numberPerPage, submit = ViewBag.submit })) 

、人がデータを検索するとき、のparamsはできます

http://localhost:000/Search?Category=Cats&Category=Dogs&SearchString=brown&numberPerPage=10&submit=adoptable 

これらをビューページに追加するにはどうすればよいですか?ユーザーはフィルタを使用できません。私はViewBagを介してそれらをつかんでいるので、彼らはhtmlのようにそこにある:

cats,dogs 

ありがとう。

+1

あなたはアクションメソッドとビューを示してもらえますか? – Win

+0

私はそれを理解しました。私は以下の答えを追加します。 – yondaimehokage

答えて

0

私は必要なことをする方法を考え出しました。読んで、特別なURLはUrl.Actionに文字列としてのみ追加することができます。それでは、私がやったことだった。

public ActionResult Index(string SearchString, string sortOrder, string currentFilter, string numberPerPage, int? page, string[] Category) 
{ 

    .......... 

    ViewBag.CategoryPager = ""; 
    foreach (var singleCategory in Category) 
    { 
     ViewBag.CategoryPager += "&Category=" + Category.Replace(" ", "%20"); 
    } 

    ......... 

    return View(searchResults.ToPagedList(pageNumber, pageSize)); 
} 

とビューで:

Page @(Model.PageCount < Model.PageNumber ? 0 : Model.PageNumber) of @Model.PageCount 
@Html.PagedListPager(Model, page => Url.Action("Index", new { page, sortOrder = ViewBag.CurrentSort, currentFilter = ViewBag.CurrentFilter, numberPerPage = ViewBag.numberPerPage }) + ViewBag.CategoryPager)