Динамическое действие MVC в маршруте - PullRequest
1 голос
/ 07 февраля 2012

Можно ли определить маршрут в MVC, который динамически разрешает действие на основе части маршрута?

Например:

`/products/create/widget`

будет преобразован в ProductsController.CreateWidget (Widget);

Я хочу, чтобы маршрут был динамическим:

routes.MapRoute(
    "Create",
    "/products/create/{productType}",
    new { controller = "Products", action = "Create{productType}" }
);

Мне нужно иметь несколько действий Create для разных типов моделей, но я не хочу добавлять новый маршрут каждый раз, когда добавляю один. Не добавляя имя к действию, я получаю неоднозначную ошибку метода. Возможно ли это сделать?

1 Ответ

1 голос
/ 07 февраля 2012

Я думаю, что вам, вероятно, нужно создать свой собственный объект маршрута, полученный из RouteBase , где вы можете назначить действие на основе определенной части URL-адреса.Взгляните на этот пример .

...