У меня есть одно приложение ASP.NET MVC, в котором также есть области.
Для коротких URL я настроил маршруты для всех actionmethods с короткими URL в RouteConfig областей, как показано ниже.
//admin dashboard having short url admin/dashboard
context.MapRoute(
"admin_dashboard",
"admin/dashboard",
new { area = "admin", controller = "admin", action = "dashboard" }
);
//student list having short url admin/studentlist
context.MapRoute(
"student_list",
"admin/studentlist",
new { area = "admin", controller = "students", action = "List" }
);
//new student having short url admin/student/new
context.MapRoute(
"student_new",
"admin/student/new",
new { area = "admin", controller = "students", action = "RegisterStudent" }
);
//edit student having short url admin/student/id
context.MapRoute(
"student_edit",
"admin/student/{id}",
new { area = "admin", controller = "students", action = "RegisterStudent" }
);
Как видите, я определил короткие URL для всех методов действия, и он также работает нормально, за исключением двух последних, которые вызывают метод, но возвращают пустое представление.
[Route("admin/student/{id}")]
[Route("admin/student/new")]
public ActionResult RegisterStudent(string Id)
{
....mycode
return View("RegisterStudent", mymodel);
}
Проблема в том, что он вызывает метод без каких-либо ошибок, но не возвращает представление. Возвращает пустое представление. Почему это случилось, я сделал какую-то ошибку?