ASP.NET Core PostgreSQLと接続する

ASP.NET Core PostgreSQLと接続する

ASP.NET CoreでPostgreSQLと接続するまでの手順を記述してます。.NET Coreのバージョンは3.1を使用してます。

環境

  • OS windows10 pro
  • IDE Visual Studio 2019
  • .NET Core 3.1
  • PostgreSQL 13.1

プロジェクト作成

Visual Studio 2019からプロジェクトを作成します。

ASP.NET Core Webアプリケーションを選択します。

任意の名前でプロジェクトを作成します。
※ここでは「postgretest」として作成してます。

「空」を選択します。

プロジェクトが作成されます。

パッケージ追加

NuGetパッケージから以下の3つをインストールしておきます。

  • Microsoft.EntityFrameworkCore.Tools
  • Npgsql.EntityFrameworkCore.PostgreSQL

パッケージマネージャーから

以下のコマンドで、インストール可能です。

DB作成

PostgreSQL側でDBを作成しておきます。
※ここでは「mydb」を作成しておきます。

接続文字列追加

「appsettings.json」とデバック用の「appsettings.Development.json」にPostgreSQLとの接続文字列を追加しておきます。

サーバー localhost
DB名 mydb
ユーザー名 pgadmin
パスワード password

で追加してます。

Modelsクラス作成

まずは、プロジェクト配下に「Models」フォルダを作成して、そこに「Customer.cs」を作成します。

「Customer.cs」を以下のように記述します。
※ここでは単純にカラム「ID」と「Name」があるテーブル「Customer」に「mydb」に追加します。

マッピング

マッピングを行うため、プロジェクト配下に「Data」フォルダを作成して、そこに「CustomerContext.cs」を作成します。

「CustomerContext.cs」を以下のように記述します。

サービス登録

「Startup.cs」にサービスを登録します。

Migration実行

パッケージマネージャーコンソールを開いて、Migrationを実行します。

以下のコマンドを実行します。

「Migrations」フォルダ配下にマイグレーションファイルが作成されます。

テーブルを作成します。

テーブルが作成されていることが確認できます。