Я пытаюсь отобразить несколько переменных строки запроса в массив, который является одним из параметров для метода действия.
Метод действия следующий:
public ActionResult Index(string url, string[] generics)
{
//controller logic here
}
Мы можем легко заставить MVC связываться с универсальными переменными, используя строку запроса, такую как? Generics = test1 & generics = test2, однако мы собираемся настроить маршрут следующим образом:
/ все / test1 / test2
Работает следующая конфигурация маршрута:
routes.MapRoute(
"TestRoute",
"whatever/{generics[0]}/{generics[1]}",
new { controller = "Main", action = "Index" }}
);
Наша проблема в том, что мы хотели бы применить некоторые ограничения к значениям generics [0] и generics [1], чтобы они были в формате даты 12-12-2009.
Мы попробовали следующее, однако ограничение вообще ничего не пропускает:
routes.MapRoute(
"TestRoute",
"whatever/{generics[0]}/{generics[1]}",
new { controller = "Main", action = "Index" }},
new { generics = @"[0-9]{2}\-[0-9]{2}\-[0-9]{2,4}" }
);
Мы попробовали следующее, однако это вызвало ошибку времени выполнения:
routes.MapRoute(
"TestRoute",
"whatever/{generics[0]}/{generics[1]}",
new { controller = "Main", action = "Index" }},
new { generics = new string[2]{ @"[0-9]{2}\-[0-9]{2}\-[0-9]{2,4}",@"[0-9]{2}\-[0-9]{2}\-[0-9]{2,4}"}}
);
Пожалуйста, кто-нибудь будет так хорош, чтобы сообщить нам, если это можно сделать, и если да, то как?
Спасибо!
Pat