Мне нужно перенаправить запрос на другой контроллер. Так что в основном у меня есть www.MyDomain.com/SomeParameter. Мне нужно прочитать это значение параметра из URL-адреса, а затем перенаправить на другой контроллер для дальнейшей обработки. Для этого у меня есть два контроллера в моем проекте Home and Employee следующим образом.Перенаправление на другой метод контроллера
public class HomeController : Controller
{
public ActionResult Index(string ID)
{
if (!string.IsNullOrEmpty(ID))
{
string EmployeeAccountNumber = GetEmployeeNumberFromID(ID);
RedirectToAction("Employee", "Index", EmployeeAccountNumber);
}
return View();
}
private string GetEmployeeNumberFromID(string ID)
{
return "Alpha";
}
}
public class EmployeeController : Controller
{
//
// GET: /Employee/
public ActionResult Index(string id)
{
return View();
}
}
Затем я добавил маршрутизации определяется следующим образом в Global.asax
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Default", // Route name
"{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
routes.MapRoute(
"EmployeeManagement", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Employee", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
}
Как вы можете видеть в методе индекс класса HomeController, я хочу, чтобы перенаправить на мой EmployeeController, однако, точка останова Я установлен в EmployeeController.Index никогда не попадает. Я здесь что-то не так?
Я не уверен, что этот код касается конкретного сценария, с которым я сталкиваюсь. Я добавил более подробные сведения в свой вопрос, чтобы уточнить его –