Я занимаюсь ASP.NET MVC, используя vs 2013, и написал простой проект с одним контроллером и представлением.ASP.NET MVC - Маршрутизация не работает
кодконтроллер:
public class HomeController : Controller
{
// GET: Home
public ActionResult Index()
{
return View();
}
public ActionResult ShowMyHome()
{
return View("MyHome");
}
}
"MyHome" вид Код:
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Hello World</title>
</head>
<body>
<div>
Welcome my first MVC page
</div>
</body>
</html>
RouteConfig код:
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
routes.MapRoute(
name: "Home",
url: "Home",
defaults: new { controller = "Home", action = "ShowMyHome", id = UrlParameter.Optional }
);
}
}
, когда я запустить и установить URL-адрес строки на "http://mySite/Home/ShowMyHome", это работает хорошо. , но когда я бегу и установить URL-адрес строки на «http://mySite/Home», я получаю сообщение об ошибке:
The view 'Index' or its master was not found or no view engine supports the searched locations. The following locations were searched:
~/Views/Home/Index.aspx
~/Views/Home/Index.ascx
~/Views/Shared/Index.aspx
~/Views/Shared/Index.ascx
~/Views/Home/Index.cshtml
~/Views/Home/Index.vbhtml
~/Views/Shared/Index.cshtml
~/Views/Shared/Index.vbhtml
Это выглядит как маршрутизация «Home» не работает.
Я бы рекомендовал использовать Отладчик маршрутов Фила Хаака. https://www.nuget.org/packages/routedebugger/. У вас есть указатель с именем? –