ビューに別の並べ替えとフィルタリングを適用したいのですが、クエリ文字列を介して並べ替えとフィルタリングのパラメーターを渡すことになると考えました。
@Html.ActionLink("Name", "Index", new { SortBy= "Name"})
この単純な構造により、並べ替えが可能になります。ビューはクエリ文字列でこれを返します:
?SortBy=Name
今、フィルタリングを追加したいのですが、クエリ文字列を最終的に
?SortBy=Name&Filter=Something
の既存のパラメータのリストに別のパラメータを追加するにはどうすればよいActionLink
ですか? 例えば:
user requests /Index/
ビューには
@Html.ActionLink("Name", "Index", new { SortBy= "Name"})
と
@Html.ActionLink("Name", "Index", new { FilterBy= "Name"})
リンク:最初のものは次のように見え/Index/?SortBy=Name
、2番目のものは /Index/?FilterBy=Name
ユーザーがフィルタリングを適用した後に並べ替えリンクを押したときに必要です-フィルタリングは失われないため、パラメーターを組み合わせる方法が必要です。私の推測では、クエリ文字列を解析するのではなく、MVC オブジェクトからパラメーターのコレクションを取得する方法があるはずです。