株式会社インデペンデンスシステムズ横浜システム開発エンジニアの西田五郎が運営しております。その他新規開発案件のご依頼をお待ちしております。APIでデータ蓄積の5回目です。APIの開発方法を確認しました。APIテンプレートを元にデータ蓄積の処理を構築してみます。前回も書きましたが、最初からテンプレートを使うと何をどうしていいか分かりずらい場合があると思ったからです。その前段階として前回までの内容を書きました。今回はテンプレートにモデルとコントローラを追加するあたりまで書きます。実際のプロジェクト一式は以下です。(※単なるサンプルプログラムです。ご利用による不具合、不利益等について弊社は一切責任を負わないものとします。2013でのプロジェクト一式プロジェクトの作成それでは、まずプロジェクトの作成からです。プロジェクトを作成します。Webアプリケーションを選択します。任意のプロジェクト名を入力してOKで進みます。APIのテンプレートを選択するのですが、その前に認証の変更で「認証なし」に変更します。認証も重要なテーマですが、ここでは「データ蓄積処理」をテーマにするために「認証なし」に変更します。APIのテンプレートの選択してプロジェクトを生成します。テンプレートの動作確認まず、以下のようなプロジェクトのフォルダ、ファイル構成になっていると思います。IdentityやUser等に関するフォルダやファイルが生成されている場合は、認証が有効になっていると思いますので再度作成した方がいいと思います。生成されたプロジェクトを何もしないでビルドします。問題なくビルド出来ると思いますのでそのままデバッグなしで開始します。以下のような画面になると思います。MVCのフォルダやファイルも生成されているのでこのような表示になります。今回は使いませんが、このデフォルトは以下のファイルで設定されています。MVCフレームワークのController(System.Web.Mvc.Controllerクラス)であるHomeControllerがデフォルトに設定されているので、Controllersフォルダ配下のHomeController.csがアプリケーション起動時に呼び出されます。APIのルーティンは以下のファイルで設定されています。WebApiConfig.csこちらが本題ですが、上記ファイルで、”api/{controller}/{id}”のルーティングが設定されています。APIのController(System.Web.Http.ApiControllerクラス)のルーティングです。APIのコントローラで、Controllersフォルダ配下にValuesController.csがあるのでこれをURLを指定して呼び出してみます。起動した状態で以下のように(※例です。ポート番号は各自違うと思います。)URLを指定します。http://localhost:62205/valuesそうすると、以下のようなJSONのレスポンスが返ってきました。これは、Controllersフォルダ配下のValuesController.csのGet()メソッドの処理です。["value1","value2"]以上を整理すると、今回のプロジェクトの構成と使い方は以下のように考えればいいでしょうか。APIのテンプレートが使える。APIのルーティングはそれぞれ別に設定されている。APIではコントローラは別クラスからの継承である。・コントローラはとりあえず全てControllersフォルダ配下に実装していく。・モデルはModelsフォルダに実装していく。・Viewsフォルダは基本的には、ASP.NETのMVCのViewになる。・JQueryは最初から組み込まれているので使える。以上を踏まえて、ファイルを追加していきます。モデルファイルの追加Modelsフォルダの配下に今回のモデルを追加します。Modelsフォルダの右クリックから追加していきます。Modelを選択します。Firstモデルを選択します。Firstモデルが生成されました。これに以下の回で作成したモデルを組み込みます。多少クラス名が違いますが、以下のようになりました。生成されたコメントはそのままにしてあります。実際には命名規約やアノテーションを考慮してコードファーストのモデルを記述しますが、ここではとりあえずということで以下のようなクラスにしました。Idというプロパティは自動的に主キーになるので少なくとも主キーは管理出来ます。接続文字列を使用するように構成されています。データベースを対象としています。接続文字列を変更してください。