利用したWebアプリケーション開発について、勉強用兼備忘録として執筆しています。最終的に、簡単なWebアプリ(TODOアプリ)を作成することが目標になります。プロジェクトを作り、TODOアプリのモックを表示させるところまで行いました。作成では、早速モデルを作成していきます。クラス」の順に選択して、「ToDoTask.cs」のファイルを作成します。「Models/ToDotask.cs」ファイルの内容を、以下のコードに変更します。プロパティは、モックで作成していた項目の内容と同一にします。いう名前のプロパティです。いう名前のプロパティが自動的にエンティティの主キーとして判断され、数値型の場合は自動採番されるようになりますので、必ず設定しておきます。内容を追加では、画面側で先ほどのモデルが使用されるように、「Controller/HomeController.cs」の内容を以下のように変更します。ToDoタスク情報を管理するために使用されます。今回は、画面表示時に分かりやすいように、モックで表示していたものと同じ内容のサンプルデータを3つ含めました。リストをビュー側に渡します。内容を変更では、ビュー側で、モデルの値を表示するように「Views\Home\Index.cshtml」の内容を以下のように変更します。IEnumerable<MvcApplication1.Models.ToDoTask>では、ビューページに対するモデルの型を指定しています。リストをループ処理します。Modelはビューに渡されたモデルデータで、itemは各ToDoタスクを表します。一度画面を確認してみます。リストに追加したサンプルモデル3つが表示されていることが分かります。モデルを使って画面側に表示できました!では次に、DBとの接続ができるように設定していきたいと思います。DBとの接続DBを作成し、アプリと連携させるためには、下記の手順を踏む必要があります。パッケージマネージャの管理画面から、「npgsql」で検索後、「Npgsql.EntityFrameworkCore.PostgresSQL」をインストールします。「正常にインストールされました」と表示されていればインストール完了です。コンテキストクラスを定義するデータモデルをデータベースに接続するように設定するのが、コンテキストクラスです。ファイルを作成します。「ToDoTaskContext.cs」のコードの内容は以下の通りです。Injection)を介してデータベース接続情報を設定します。クエリを実行しデータを取得、更新、削除することが可能となります。依存関係の管理に役立つ一般的なツールです。登録するように、下記を追加します。options.UseNpgsql(connectionString));1行目のconnectionStringは、データベース接続文字列を取得したものです。アプリケーションの設定ファイル(appsettings.jsonなど)に定義されている接続文字列の名前です。この取得したデータベース接続文字列を用いて、データベースとやり取りするための設定を2行目で行っています。いるものアプリ設定ファイルに接続文字列を追加では、先程話があがった「接続文字列」を「appsettings.json」ファイルへ追加します。データベース接続情報は、自分の環境に合わせて設定します。マイグレーション機能を使用して、データベースを作成します。この機能によって、プログラム上で定義されたテーブル定義を、DBに移行させることが可能になります。コマンドが利用できるように、「Microsoft.EntityFrameworkCore.Tools」のパッケージをパッケージマネージャからインストールします。上で、以下のコマンドを入力します。これは、”InitialModels”という名前のマイグレーションを作成しています。プロジェクト内で定義されたマイグレーションをデータベースに適用するために、以下のコマンドを入力します。アプリケーション内のモデルと同じ内容で作成されているか確認してみます。設定した通りにテーブル項目が作成されています。モックで決め打ちデータを表示していた部分をモデルを使用して画面上に表示できるように、モデルの追加・コントローラの変更・ビューの変更を行い、DB上にテーブル作成するまでを行いました。できるようにしたいと思います。