名前に「Api」サフィックスが付いた WebApi コントローラーがあります (例: 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」サフィックスを自動的に追加するルート テンプレートをセットアップする簡単な方法があることを願っています。