• システム開発に関わる内容をざっくりと書いていく

charter48 投稿一覧

Entity Framework Core DbUpdateException の切り分け

EF Core で SaveChanges / SaveChangesAsync したときに出る DbUpdateException。内側を見ないと原因が分からないことが多い。 この記事では、よくある中身と切り分け手順を ...

続きを読む

ArgumentNullException と NullReferenceException の使い分け

ArgumentNullException と NullReferenceException は、どちらも「null」が絡む例外だが、意味も出し方も違う。 現場では「どっちを投げればいい?」「どっちが落ちた?」で迷いやす ...

続きを読む

SQL Server デッドロックの見方と対策

SQL Server のデッドロックは、「お互いのロックを奪い合って進める」状態。エラー 1205 で一方が犠牲者(victim)になる。 この記事では、見方とざっくりした対策を逆引きできるようにまとめる。 先に結論 症 ...

続きを読む

ObjectDisposedException 発生原因と対策

ObjectDisposedException は、「すでに破棄(Dispose)されたオブジェクトを使った」ときに出る。HttpClient・Stream・DbContext・CancellationTokenSour ...

続きを読む

RDS Proxy + Dapper + MySqlConnector で FirstOrDefault 実行時にピン留めが起きるとき

RDS Proxy を MySqlConnector の前段に置き、Dapper でいつも通り QueryFirstOrDefault などを使っている。CloudWatch の DatabaseConnectionsC ...

続きを読む

SQL Server 実行計画の見方 インデックスが効かないとき

「インデックスを付けたのに遅い」「実行計画を見ても何を確認すればいいか分からない」は SQL Server あるある。 この記事では、実行計画の見方とインデックスが使われないときの切り分けをざっくり逆引きする。 先に結論 ...

続きを読む

InvalidOperationException よくある発生パターン(LINQ / DI / コレクション)

InvalidOperationException は「今の状態ではその操作はできない」ときに出る。メッセージだけ見ると抽象的で、現場では LINQ・DI・コレクション周りでよく当たる。 この記事では、よくある発生パター ...

続きを読む

ローカルエージェントとクラウドエージェントの違いと使い分け

AIコーディングエージェントを使うと、「自分のPC上で動かすもの」と「クラウド上で動かすもの」の両方に出会う。Cursor でも、ローカルエージェントとクラウドエージェントがある。 見た目は似ていても、動く場所・権限・向 ...

続きを読む

C# JsonException / デシリアライズ失敗の原因と対策

System.Text.Json のデシリアライズ失敗で出る例外の切り分け。API 連携やキューメッセージで頻出。 先に結論 よくある原因 1. 本文自体が壊れている 2. 型が合わない 数値が文字列で来ている、配列なの ...

続きを読む

C# async await デッドロック・待ち続けるときの見方

C# の async/await で「終わらない」「UI やリクエストが固まる」ときは、例外より待ち方の設計が原因なことが多い。 この記事では、デッドロックっぽく見える待ちと、よくある直し方をざっくり整理する。 先に結論 ...

続きを読む