5
日付フィルタを使用するWebページがあり、ユーザが 'フィルタ'アクションリンクをクリックしたときに選択した日付範囲がコントローラに返され、フィルタリングされたモデルデータを「インデックス」ビューに表示します。ビューからコントローラへの日付の受け渡しmvc/c#
ビュー
@Html.ActionLink("Filter", "FilterDateRange", new { from = Url.Encode(Model.FromDate.ToString()), to = Url.Encode(Model.ToDate.ToString()) }, null)
コントローラ
public ActionResult FilterDateRange(string from, string to)
{
var fromDate = DateTime.Parse(HttpUtility.UrlDecode(from));
var toDate = DateTime.Parse(HttpUtility.UrlDecode(to));
//do stuffs
return View("Index", statsPages);
}
私の質問は、これを行うために、よりエレガントな方法はありますか?現在の日付の値は、ビューでエンコードされたurlであり、コントローラでURLがデコードされています。コントローラ内のメソッドは、文字列ではなく日付の時刻パラメータを受け取ります。
ありがとうございました。
はい、これはありがとうございます。私はあなたが元の日付の時間を戻すことができないと仮定URLを壊すだろうが、それはあなたが言ったようにモデルのバインダーを処理するようだ。 – RobJohnson