2014-10-27 2 views
0

Я папка упаковала в моем приложении под названием администратор внутри контроллеров, так что моя структура папок выглядит следующим образомasp.net маршрутизация не может найти метод

-Models 
| 
-Views 
| 
-Controller 
    | 
    |-HomeController.cs 
    | 
    |-Admin 
    | 
    |-HomeController.cs <-- in this controller, i have methods Add,Delete,View 

я необходимый для создания маршрута, так что если я введите URL-адрес http://localhost:2336/admin/add, он выполнит метод добавления домашнего контроллера, но я получаю ошибку 404.

public static void RegisterRoutes(RouteCollection routes) 
     { 
      routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 

      routes.MapRoute(
      name: "Admin", 
      url: "Admin/{controller}/{action}/{id}", 
      defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }, 
      namespaces: new[] { "fms.Controllers.Admin" } 
      ); 

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

     } 

ответ

1

Ваш админ маршрут определяет маршрут, как это:

Admin/{controller}/{action}/{id} 

Это означает, что в вашем URL вам нужно иметь имя контроллера, а также действие. Например, это должно работать:

http://localhost:2336/admin/home/add 

Если изменить маршрут URL-адрес для этого он будет работать:

Admin/{action}/{id} 

Однако это не означает, что это немного бессмысленно, чтобы ваш контроллер администратора в своем собственном папка. Если бы я был вами, я бы посмотрел, как создать новую область MVC.

+0

Я получаю эту ошибку. Было найдено несколько типов, соответствующих контроллеру с именем «Home». – Smith

+0

Возможно, вам, вероятно, потребуется указать пространство имен для вашего другого маршрута. Или используйте область, которая заставляет все это уйти :) – DavidG

+0

Я уже делал 'fms.Controllers.Admin' или вы говорите о маршрутах по умолчанию – Smith

Смежные вопросы