Передача параметра даты в RedirectToAction RouteValues - PullRequest
10 голосов
/ 18 июня 2011

при передаче параметра 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):

(это не будет работать, б / с% 2F ....)

1 Ответ

17 голосов
/ 18 июня 2011

Попробуйте использовать следующий формат при передаче дат вокруг: yyyy-MM-dd:

var date = myVM.someobject.someobjectDateTime.ToString("yyyy-MM-dd");
return RedirectToAction("index", "ControllerName",  new { mydate = date });

Теперь внутри Index вы сможете получить правильную дату:

public ActionResult Index(DateTime mydate)
{
    ...
}

и, если вам нужен компонент времени, используйте следующий формат: yyyy-MM-dd HH:mm:ss

...