Настройка маршрутизации ASP.NET Web Api

У меня есть контроллеры WebApi, которые заканчиваются на суффикс "Api" в их именах (например: StudentsApiController, InstructorsApiController). Я делаю это, чтобы легко отличать мои контроллеры MVC от контроллеров WebApi. Я хочу, чтобы мои маршруты WebApi выглядели как

http://localhost:50009/api/students/5 и нетhttp://localhost:50009/api/studentsapi/5.

В настоящее время для достижения этого я настраиваю маршруты, такие как

routes.MapHttpRoute(
name: "GetStudents",
routeTemplate: "api/students/{id}",
defaults: new { controller = "StudentsApi", id = RouteParameter.Optional });

routes.MapHttpRoute(
name: "GetInstructors",
routeTemplate: "api/instructors/{id}",
defaults: new { controller = "InstructorsApi", id = RouteParameter.Optional });

Это оказывается очень громоздким, так как я должен добавить маршрут для каждого метода в моих контроллерах. Я надеюсь, что должен быть простой способ настройки шаблонов маршрутов, который автоматически добавляет суффикс «api» имени контроллера при обработке маршрутов.

Ответы на вопрос(4)

Ваш ответ на вопрос