2026-10-26 ef-coreef-core-10ef-core-11 1つの EF Core プロジェクトで複数の DbContext ごとにマイグレーションフォルダーを分ける方法 DbContext ごとに --output-dir を一度だけ指定すれば、以降のマイグレーションは同じフォルダーと名前空間に作成されます。既定のレイアウトが偏る理由、共有フォルダーで発生する CS0111 の衝突、既存マイグレーションの移動方法、履歴テーブルを分けるべきタイミングを解説します。
2026-10-16 ef-coreef-core-10ef-core-11 EF Core が SQL Server の `date` 列を `DateOnly` と `DateTime` のどちらでスキャフォールドするかは何で決まるのか 決め手はスタートアッププロジェクトにある SQL Server プロバイダーの EF Core バージョンです。EF Core 7 以前は date を DateTime に、EF Core 8 から 11 までは DateOnly にスキャフォールドします。この判断を行う型マッピング、EF Core 7、8、10、11 RC 2 での実測出力、そして列を黙って datetime2 に再マッピングすることなく DateTime に戻す 2 つの方法を紹介します。
2026-10-13 errorsef-coreef-core-10 修正: Pomelo.EntityFrameworkCore.MySql と EF Core 10 の間で発生する NU1608 / NU1107 バージョン競合 Pomelo 9.0.0 は EF Core Relational 9.0.x しか許可しておらず、EF Core 10 向けのビルドもありません。EF Core のパッケージをすべて 9.0.x にそろえるか、Microting.EntityFrameworkCore.MySql 10.0.x に切り替えてください。警告を抑制すると起動時にクラッシュします。
2026-10-06 errorsef-coreef-core-10 解決: EF Core のマイグレーションをリセットした後の There is already an object named 'X' in the database Migrations フォルダーを削除して新しい InitialCreate を生成すると、EF Core はテーブルが既に存在することを知りません。開発用データベースを削除するか、新しいマイグレーションを実行せずに __EFMigrationsHistory に記録します。
2026-10-04 ef-coreef-core-10postgresql Npgsql を使う EF Core の全接続に search_path や statement_timeout などの PostgreSQL セッションパラメーターを設定する方法 一度だけ実行した SET は、Npgsql が接続をプールに戻した瞬間に DISCARD ALL で消去されます。Search Path と Options の接続文字列キーワードで search_path と statement_timeout をスタートアップパケットに含め、うまくいかない場合は ALTER ROLE か ConnectionOpened インターセプターにフォールバックします。また、UsePhysicalConnectionInitializer の SET が黙って失われる理由も解説します。
2026-09-21 ef-coreef-core-10postgresql EF Core と Npgsql で PostgreSQL の jsonb 配列にアトミックに追加する方法 エンティティを読み込み、List.Add を呼んで保存すると、jsonb ドキュメント全体が書き換えられ、同時に行われた追加は黙って失われます。追加処理は jsonb の || 演算子を使った 1 つの UPDATE にまとめます。ExecuteSqlAsync を使うか、ExecuteUpdateAsync の中でマップした関数を使い、さらに @> によるガードで冪等にします。
2026-09-21 ef-coreef-core-10oracle EF Core で Oracle のシーケンスを使って主キーを生成する方法 Oracle.EntityFrameworkCore 10 の UseSequence で EF Core のキーを Oracle のシーケンスにマッピングします。プロバイダーが実際に出力する DDL と INSERT の SQL、既存のシーケンスやレガシーなトリガーを使う方法、引用符と HiLo でつまずきやすい理由、そして ORA-00001 を起こさずに ID 列をシーケンスへ移行する方法を解説します。