Параметр даты передачи в 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