私は/ Comments/Search/3?sort = authorを好む。クエリ文字列は、特にパラメータが(この場合のように)SEOの目的に重要でない場合は、プログラムパラメータを渡すのに適しています。パラメータに検索用語として意味的意味が含まれていれば、最初のURLが良いでしょう。
public ActionResult Search(int id, string sort)
ASP.NET MVCは自動的にあなたのメソッドのパラメータに値をクエリ文字列まで配線します:あなたはこのようなものを使用することができ、コントローラメソッドで
。
ソート=著者は
検索(3、 "作者")を呼び出します/コメント/検索/ 3は、検索(3を呼ぶのでしょうか?次のルート
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Comments", action = "Search", id = "" } // Parameter defaults
);
/コメント/検索/ 3を使用します)、ヌル
idはので、このURLは失敗する必須であることに留意してください: /コメント/検索
を読んでいました私は、このソリューションのために行くと思います。 sort = 3はオプションなので、どのようにルーティングしてデフォルトを設定しますか? – pistacchio
設定上の慣習のため、メソッドのパラメータをそれぞれ 'id'と 'sort'と呼ぶ必要があることに注意してください。 –
MVC 2では、UrlParameter.Optionalを使用し、アクションパラメータで 'int? 'int id'ではなく' id'を入力し、空の入力テキストを持つデフォルトの検索UIを表示するには '/ Comments/Search'を使います。 – CallMeLaNN