Как проложить маршрут к другому контроллеру? - PullRequest
0 голосов
/ 09 октября 2010

ОК. У меня есть два разных контроллера, скажем controllerA и controllerB. Теперь изнутри контроллера A мне нужно перенаправить с некоторыми параметрами на контроллер B и внутри контроллера A..asax.cs?

Я новичок в MVC.Спасибо за помощь

1 Ответ

1 голос
/ 09 октября 2010

Во-первых, у вас нет , чтобы определить маршрут для этого. Если вы оставите все как есть, MVC сгенерирует для вас строку запроса, и ваш маршрут будет выглядеть следующим образом (заданный текст ключевых слов "abc"):

/ControllerBAction?keywords=abc

Если вы не хотите, чтобы ваши ключевые слова были частью строки запроса, вы можете определить маршрут следующим образом:

routes.MapRoute("KeywordsRoute", "{controller}/{action}/{keywords}");

Если вы сделаете это, поставьте перед вашим маршрутом по умолчанию. Это создаст URL, который выглядит следующим образом:

/ControllerBAction/abc

Обновление: Если все, что вам нужно знать, это как перенаправить с одного контроллера на другой контроллер, то вам просто нужно использовать другую перегрузку метода RedirectToAction (), например:

return RedirectToAction("ControllerBAction", "ControllerBName", new { keywords = text });
...