У меня есть два контроллера на основе типа пользователя в моем проекте ASP.NET Core. Один из них - AdminController
для администратора, а один - UserController
для пользователей. И есть также HomeController
для входа и контакта. Я использую следующую конфигурацию маршрута карты для администраторов и пользовательских контроллеров.Маршрутизация в ASP.NET Core
config.MapRoute(
name: "UserRoute",
template: "{controller}/{username}/{action}",
defaults: new { controller = "User|Admin", action = "Dashboard" }
);
Используя выше маршрут конфигурации я получаю следующие типы URLS
/User/user1
/Admin/user2
Я не хочу Admin
и User
части в URL вместо этого я хочу
/user1
/user2
Как удалить User
и Admin
с URL-адресом? Если я удалю контроллер с {controller}/{username}/{action}
и укажу только контроллер по умолчанию, он будет работать только для одного контроллера.
Проверьте это Аналогичная проблема: http://stackoverflow.com/questions/3337372/asp-net-mvc-removing-controller-name-from-url. Вы можете использовать ограничение маршрута на дополнительном «MapRoute», не затрагивая маршрут по умолчанию. –