asp.net запись маршрута mvc для корневого запроса веб-сайта - PullRequest
1 голос
/ 25 марта 2011

Я не могу понять, как направить asp.net mvc на нужный контроллер для запроса к корню моего сайта.

Я пробовал много разных записей в RegisterRoutes, включая:

routes.MapRoute(
     "MyHome",
      "",
      new { controller = "MyController", action = "Index", id = UrlParameter.Optional }
 );

Ошибка, которую я получаю:

Представление «Индекс» или его мастер не найдены, или никакой механизм просмотра не поддерживает найденные местоположения.Были найдены следующие местоположения: ~ / 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

Как получить корневые запросы веб-сайта, отправляемые на нужный контроллер?

Обновление: все еще не удалось решить проблему, поэтому создал новый проект MVC, который работал из коробки.Я несколько раз переименовывал исходный проект, так что, возможно, что-то напортачило.

Ответы [ 2 ]

0 голосов
/ 25 марта 2011

На основании сообщения об ошибке ...

  1. Идет к контроллеру, называемому HomeController.Итак, я предполагаю, что у вас есть другой маршрут (может быть по умолчанию?), Который направляет его в HomeController?

  2. Сообщение об ошибке касается представления, а не контроллера.Это отличается от маршрутизации.

Самый простой способ добиться того, о чем вы просите, - это изменить маршрут по умолчанию, который был создан при создании проекта MVC3.

rout.MapRoute (
"По умолчанию", // Имя маршрута
"{controller} / {action} / {id}", // URL с параметрами
new {controller = "MyController", action =" Index ", id = UrlParameter.Optional} // Параметры по умолчанию
);

0 голосов
/ 25 марта 2011

Для запуска MyController ваш URL должен выглядеть (на основе текущей маршрутизации) http://localhost/MyController.

Глядя на вашу ошибку, у меня возникает ощущение, что вы начали с пустого шаблона проекта MVC.Это тот случай?

...