問題描述
如何在 MVC 應用程序的 URL 中使用日期(MM‑dd‑yyyy 格式)? (How Do I Use a Date (in the MM‑dd‑yyyy format) in a URL in an MVC Application?)
我有一個 MVC2 項目,它在 RegisterRoutes 方法中有如下路由:
routes.MapRoute(
"PrettyUrl",
"Airplanes/{query}/{page}",
new { controller = "Airplanes", action = "Details", query ="", page = 0 }
);
目前,GET 的 URL 看起來像 Airplanes/va123‑va234/1
‑ 我想添加一個日期,例如:Airplanes /va123‑va234/10‑10‑2010/1
但我不知道如何獲取將日期映射為這種格式的路線。
參考解法
方法 1:
You can add a parameter for date
routes.MapRoute(
"PrettyUrl",
"Airplanes/{query}/{date}/{page}",
new { controller = "Airplanes", action = "Details", query ="", page = 0,
date = UrlParameter.Optional }
);
In your controller method, make sure you take in a date
parameter.
public ActionResult Details(string query, string date, int page) {
var newDate = DateTime.Parse(date);
return View();
}
(by Scott Baker、Justin Soliz)