ASP.NET MVC5 とPostgresqlでWebアプリケーションを作成する
はじめに
WebアプリケーションをASP.NET MVC5とPostgresqlで作成します。
前提
- Windows10
- PostgreSQL 10.10
- VisualStudio 2019 Version 4.8.03752
- .NET Framework 4.7.2
- EntityFramework 6.2.0
- Npgsql 4.1.2
以下の記事を参考にして、Webアプリケーションのプロジェクトを作成します。
wanouri.hatenablog.com
以下の記事を参考にして、PostgreSQL環境を構築しテーブルを作成します。
wanouri.hatenablog.com
wanouri.hatenablog.com
wanouri.hatenablog.com
wanouri.hatenablog.com
EntityFramework6.Npgsqlをインストールする
- ソリューションエクスプローラで、プロジェクトを右クリックします。
- NuGetパッケージの管理をクリックします。
- EntityFramework6.Npgsql をインストールしてください。
- EntityFramework も上記インストールと同時にインストールされます。
Npgsql PostgreSQL Integrationをインストールする
Npgsql PostgreSQL Integrationをダウンロードしてインストールします。
marketplace.visualstudio.com
WebアプリケーションとPostgreSQLを接続する
- ソリューションエクスプローラーのModelsフォルダを選択して、右クリックします。
- 追加をクリックします。
- 新しい項目をクリックします。
- データをクリックします。
- ADO.NET Entity Data Modelをクリックします。
- 名前の欄に任意の文字列(Model1)を入力後、追加をクリックします。
- データベースからCode Firstをクリックして、次へをクリックします。
- 新しい接続をクリックします。
- Host、Database、User name、Passwordを入力します
- はい、重要情報を接続文字列に含めます。にチェックして、次へをクリックします。
- テーブルにチェックを入れて、完了をクリックします。
WebConfigを修正する。
- Web.configファイルのconfigurationタグ内に以下の内容を追加します。
<system.data> <DbProviderFactories> <remove invariant="Npgsql" /> <add name="Npgsql Data Provider" invariant="Npgsql" description=".Net Data Provider for PostgreSQL" type="Npgsql.NpgsqlFactory, Npgsql, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7" support="FF" /> </DbProviderFactories> </system.data>
スキャフォールディングを行いページを生成する。
- ソリューションのリビルドを行います。
- ソリューションエクスプローラーのModelsフォルダを選択して、右クリックします。
- 追加をクリックします。
- 新規スキャフォールディングアイテムをクリックします。
- モデルクラスにitemsを選択します。
- データベースコンテキストにModel1を選択します。
デバッグ実行
- デバッグを開始して、URLの末尾にitemsと付加して更新します。(以下は例)
https://localhost:44335/items
- テーブルの内容が表示されます。