ASP.NET Web Api Routing-Anpassung
Ich habe WebApi-Controller, deren Namen mit dem Suffix "Api" enden (z. B. StudentsApiController, InstructorsApiController). Ich mache das, um meine MVC-Controller leicht von WebApi-Controllern zu unterscheiden. Ich möchte, dass meine WebApi-Routen ähnlich aussehen
http://localhost:50009/api/students/5
und nichthttp://localhost:50009/api/studentsapi/5
.
Um dies zu erreichen, richte ich derzeit Routen wie
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 });
Dies gestaltet sich sehr umständlich, da ich für jede Methode in meinen Controllern eine Route hinzufügen muss. Ich hoffe, es sollte eine einfache Möglichkeit geben, Routenvorlagen einzurichten, die bei der Verarbeitung von Routen automatisch das Suffix "api" als Controller-Namen einfügen.