2012-02-21 2 views
0

Мне нужно убедиться, что когда люди идут в мой домен, например. mydomain.com они получают ссылку на домашнюю операцию в домашнем контроллере, например mydomain.com/home/home. Я не могу заставить его работать, используя настройки документа по умолчанию в IIS. Я предполагаю, что это как-то связано с global.asax, но я не добился успеха в работе. Я до сих пор просто получаю 404, когда он пытался найти вид в/MVC 3 маршрутизация документа по умолчанию

ответ

1

В global.asax вам необходимо установить правильный контроллер и действие по умолчанию на вашем маршруте.

routes.MapRoute(
     "Default", // Route name 
     "{controller}/{action}/{id}", // URL with parameters 
     new { controller = "Home", action = "Index", id = UrlParameter.Optional } 
    ); 

Вы изменили действие на «Главная» вместо «Индекс».

+0

Ну, это сработало .. странно .. У меня уже было Пробовал это .. или так я думал. –

0

Убедитесь, что метод Главного внутри HomeController

Чтобы получить URL по умолчанию, отображенный на него, вы должны изменить Global.asax .cs и изменить индекс на главную. То есть

routes.MapRoute(
    "Default", // Route name 
    "{controller}/{action}/{id}", // URL with parameters 
    new { controller = "Home", action = "Home", id = UrlParameter.Optional } // Parameter defaults 
); 
+0

У меня есть .. Он отлично работает, если вы вводите полный URL-адрес, например. mydomain.com/home/home .., но если вы просто введите mydomain.com, вы получите 404. Мне нужно mydomain.com, чтобы указать на mydomain.com/home/home –

0

Вы можете по умолчанию сайт, чтобы приземлиться на дому/Home на основе ваших отображенных маршрутов в Global.asax.cs:

public static void RegisterRoutes(RouteCollection routes) 
{ 
    routes.MapRoute(
    "Default", // Route name 
    "{controller}/{action}/{id}", // URL with parameters 
    new { 
     controller = "Home", // default controller when none is specified 
     action = "Home",  // default action when none is specified 
     id = UrlParameter.Optional 
    }, // Parameter defaults 
    new string[]{ "Web.Controllers" } // namespace 
);         // (helpful when you have separate views) 
} 
Смежные вопросы