Параметр даты передачи в RedirectToAction RouteValues
При передаче параметра DateTime в RedirectToAction (Asp.Net MVC2)
либо путем передачи DateTime, либо путем передачи даты: "13/4/2000"
return RedirectToAction("index", "ControllerName", new { mydate = DTHelper.PrintDate(myVM.someobject.someobjectDateTime) });
Параметр, переданный с этим представлением - который контроллер не может решить:
http://localhost:6105/ControllerName?mydate=19%2F6%2F2011
как я могу заставить его проходить как оригинальное (он работает, когда я сам строю url):
(это не сработает b/c% 2F....)
Ответы
Ответ 1
Попробуйте использовать следующий формат при прохождении дат вокруг: yyyy-MM-dd
:
var date = myVM.someobject.someobjectDateTime.ToString("yyyy-MM-dd");
return RedirectToAction("index", "ControllerName", new { mydate = date });
Теперь внутри индекса вы сможете получить правильную дату:
public ActionResult Index(DateTime mydate)
{
...
}
и если вы хотите, чтобы компонент времени использовал следующий формат: yyyy-MM-dd HH:mm:ss