はじめに
今回は、これまで開発してきたアプリケーションにWeb APIを追加してみます。
実装
スキャフォールディングの機能を使うことで、簡単にWeb APIのコードを追加することができます。
以下のコマンドを実行してください。
$ dotnet aspnet-codegenerator controller -name UsersController -async -api -m User -dc UserContext -outDir Controller/Users
このコマンドを実行すると、Controller/Usersディレクトリの中にUsersController.csというファイルが作られます。
Web APIのリクエストを受け取ったあとに行われる処理はここに記述されています。
次に、Startup.csのConfigure()メソッド内のapp.UseEndpoints()に以下のように追記します。
app.UseEndpoints(endpoints => { endpoints.MapRazorPages(); endpoints.MapControllers(); });
動作確認
ブラウザでhttps://localhost:5001/api/Usersにアクセスすると、データベースに記録されているデータがJSON形式で返されます。
https://localhost:5001/api/Users/1にアクセスすると、IDが1のデータのみが返されます。
もちろん、これまで開発したWebアプリケーションの画面も使えるので、データの登録や修正も可能です。