東京で働く、ある開発者のメモ

[Entity Framework Core] データベースファースト(Database First)で、モデルを生成してみた。

EntityFrameworkCore にて、PostgreSQL のデータベースからエンティティモデルを生成する方法を説明していく。

(1) 動作環境

Microsoft Visual Studio Enterprise 2017 Version 15.8.7
PostgreSQL 10.3

(2) プロジェクト作成

プロジェクト名は、TestApp とした。

(3) 関連パッケージのインストール

「NuGet パッケージの管理」を開く。

最低でも以下のパッケージをインストールする。
Microsoft.EntityFrameworkCore
Microsoft.EntityFrameworkCore.Design
Npgsql.EntityFrameworkCore.PostgreSQL

インストール後、「ソリューション エクスプローラー」に、「プロジェクト」-「依存関係」-「NuGet」の配下に、インストールしたパッケージがあればOK。

※ インストール後に、Visual Studio を再起動しないと、モデル生成時に、うまく動作しないことがあった。

(4) エンティティモデルの生成

Models ディレクトリ作成

「ツール」 – 「NuGetパッケージマネージャー」 – 「パッケージマネージャーコンソール」を開く。

コンソール上で

で 移動し、

で Models ディレクトリがあることを確認する。

Models の下に Book というテーブルに対応するファイルが生成されていれば完了。

(5) オプション

オプションは以下のとおり。
特定のテーブルのみ出力したり、Context 名の指定もできる。

参考サイト

Getting Started with Entity Framework Core: Database-First Development
https://www.codeproject.com/Articles/1209903/Getting-Started-with-Entity-Framework-Core-Databas