0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Entity Framework テーブル作成、更新

Last updated at Posted at 2025-04-02

はじめに

業務でアプリケーションで使用するテーブルをEntity Frameworkで実装する機会があったので手順をメモしておく。

Entity Frameworkとは

以下の特徴がある。

  • Entity Framework(EF)は、Microsoftが開発したオブジェクトリレーショナルマッピング(ORM)フレームワークで、これにより、データベースとのやり取りをより簡単かつ効率的にすることができる
  • Entity Frameworkを使用することで、開発者はデータベースのテーブルをクラスとしてマッピングし、データベース操作をオブジェクトとして扱うことができる

テーブル実装

  • 以下の2つのテーブルを作成する(EFではテーブルの定義をC#のオブジェクトとして定義する)
    • Product.cs
    • Category.cs

以下のようにEntitiesフォルダーに格納します。
image.png

Product.cs
namespace YourNamespace.Entities
{
    public class Product
    {
        public int Id { get; set; } // プライマリキー
        public string Name { get; set; } // プロダクト名
        public decimal Price { get; set; } // プロダクトの価格
        // 他のプロパティを追加
    }
}
Category.cs
namespace YourNamespace.Entities
{
    public class Category
    {
        public int Id { get; set; } // プライマリキー
        public string Title { get; set; } // カテゴリ名
        // 他のプロパティを追加
    }
}
  • EFではデータベース接続、エンティティの管理、クエリの実行、およびトランザクションの管理をデータベースコンテキストと呼ばれるクラスを通じて行う

image.png

YourDbContext.cs
namespace YourNamespace
{
    public class YourDbContext : DbContext
    {
        public DbSet<Product> Products { get; set; } // 新しく追加
        public DbSet<Category> Categories { get; set; } // 新しく追加

        // コンストラクタ、OnModelCreatingメソッド、その他の設定
        protected override void OnModelCreating(ModelBuilder modelBuilder)
        {
            // モデルの設定があればここに
        }
    }
}
  • 新しいエンティティとデータベースコンテキストの更新が完了したら、マイグレーションを作成する
    ↓以下のコマンドをパッケージマネージャーコンソールで実行
Add-Migration AddMultipleEntities

実行するとマイグレーションファイルがマイグレーションフォルダ内に保存される。

image.png

  • 作成されていることを確認し、以下のコマンドを実行することで、Migrationフォルダ内のマイグレーションファイルが参照されデータベースの作成、更新を行ってくれます
Update-Database

まとめ

EFを活用することで、開発者は手動でのスキーマ管理の手間を減らし、エンティティモデルの変更を素早くデータベースに反映させることができます。

参考:https://learn.microsoft.com/ja-jp/ef/core/managing-schemas/migrations/?tabs=vs

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?