2026-09-05 ef-coredotnet-11csharp EF Core のインターセプターとは何か、どんなときに必要か EF Core のインターセプターは、コマンドの実行や SaveChanges といった操作の前後で EF が呼び出すクラスで、観察するだけでなく操作を変更したり抑制したりできます。EF Core 11 の 7 つのインターセプトポイント、登録とライフタイムの規則、そしてクエリフィルターやログ出力のほうが適している場面をまとめます。
2026-08-30 errorsef-coreef-core-11 Fix: EF Core の並行 INSERT で発生する 23505: duplicate key value violates unique constraint ハンドラーの「確認してから挿入」はアトミックではありません。SqlState 23505 の PostgresException を捕捉するか、全体を 1 つの INSERT ... ON CONFLICT 文にまとめてください。EnableRetryOnFailure は役に立ちません。
2026-08-30 errorsef-coreef-core-11 解決: dotnet ef database update 実行時の CREATE DATABASE permission denied in database 'master' EF Core の Migrate() は常にデータベースの存在を確認し、なければハードコードされた master 接続で作成します。CREATE ANY DATABASE を付与するか、既存データベースへのログインのアクセスを直すか、冪等な SQL スクリプトを配布してください。
2026-08-30 errorsef-coremaui 修正: .NET MAUI の iOS ビルドで発生する Model building is not supported when publishing with NativeAOT iOS ビルドは DynamicCodeSupport=false を設定するため、NativeAOT を有効にしていなくても EF Core はモデルの構築を拒否します。コンパイル済みモデルと事前コンパイル済みクエリを出荷するか、インタープリターを再び有効にしてください。
2026-08-23 ef-corelinqcsharp EF Core が Where、Select、OrderBy で変換できる再利用可能な LINQ 述語の書き方 bool を返すヘルパーメソッドは "could not be translated" を投げますが、Expression<Func<T, bool>> は投げません。LINQKit なしで EF Core 11 の式ツリーを合成、入れ子、再利用する方法を、各ケースの実際の SQL 付きで解説します。
2026-08-19 errorsef-coredotnet 修正: EF Core 11 の "An exception was thrown while attempting to evaluate a LINQ query parameter expression" EF Core は、クライアント評価されるクエリの一部が評価中に例外を投げたときにこれを出します。InnerException を読み、EnableSensitiveDataLogging を有効にして、null チェックをラムダの外へ出してください。
2026-08-17 ef-coreef-core-11sql-server EF Core 11 で insert 時にデータベースのシーケンスから主キーを生成する方法 EF Core 11 の UseSequence でキーを IDENTITY から SQL Server のシーケンスへ移す方法です。EF が実際に発行する SQL、明示的なキー値が IDENTITY_INSERT なしで通るようになる理由、int 列に bigint シーケンスをつないでしまう罠、そして設計時に見込んでおくべき欠番を扱います。
2026-08-16 csharpdotnetdotnet-11 Blazor のシングルトンサービスから IDbContextFactory<T> を使う方法 シングルトンは DbContext を注入できませんが、IDbContextFactory<T> なら注入できます。AddDbContextFactory がファクトリを既定でシングルトンとして登録するからです。呼び出しごとにコンテキストを生成して破棄し、インスタンスは決して保持しないでください。
2026-08-12 errorsdotnetdotnet-10 修正: dotnet tool install --global dotnet-ef がエラーを出す .NET 10 SDK で dotnet tool install --global dotnet-ef が失敗するすべてのパターンを、正確なメッセージと終了コード付きで解説します。インストール済み、バージョンが見つからない、ダウングレード拒否、shim の衝突、到達できない NuGet フィード、そしてインストール成功後に初めて壊れるランタイム不一致。
2026-08-10 ef-coreef-core-11sql-server EF Core 11 でストアドプロシージャを呼び出して結果をマッピングする方法 プロシージャがエンティティの全列を返す場合は DbSet の FromSql、射影を返す場合は Database.SqlQuery<T>、何も返さない場合は ExecuteSql を使います。EXEC に LINQ 演算子を連結してはいけません。また、リーダーが破棄される前に出力パラメーターを読んではいけません。