Да, вы можете иметь контроллеры в подпапках. При маршрутизации может быть много возможных URL.
Например, если у вас есть зарегистрированный маршрут, как показано ниже:
routes.MapRoute(
"admin1",
"admin/{controller}/{action}/",
new { controller = "WikiAdmin", action = "Index"}
);
URL может быть / admin / WikiAdmin / Index / или / admin / WikiAdmin / Edit / или что-то еще, соответствующее маршруту. (Предположим, что в контроллере WikiAdmin есть действие Edit)
Еще пример, если у вас есть маршрут, зарегистрированный как показано ниже:
routes.MapRoute(
"admin2",
"account/{action}/", //no controller specified in url
new { controller = "WikiAdmin", action = "Index"}
);
Тогда URL может быть / account / Index / или / account / Edit / или даже / account / . (Поскольку контроллер по умолчанию - WikiAdmin, а действие по умолчанию - индекс)