C# の async/await で「終わらない」「UI やリクエストが固まる」ときは、例外より待ち方の設計が原因なことが多い。 この記事では、デッドロックっぽく見える待ちと、よくある直し方をざっくり整理する。 先に結論 ...
ArgumentNullException と NullReferenceException は、どちらも「null」が絡む例外だが、意味も出し方も違う。 現場では「どっちを投げればいい?」「どっちが落ちた?」で迷いやす ...
InvalidOperationException は「今の状態ではその操作はできない」ときに出る。メッセージだけ見ると抽象的で、現場では LINQ・DI・コレクション周りでよく当たる。 この記事では、よくある発生パター ...
ObjectDisposedException は、「すでに破棄(Dispose)されたオブジェクトを使った」ときに出る。HttpClient・Stream・DbContext・CancellationTokenSour ...
AggregateException は「複数の例外をまとめた袋」。async / Task.WhenAll / Parallel でよく出る。中身をほどかないと本当の原因が見えない。 先に結論 いつ出現するか ほどき方 ...
System.Text.Json のデシリアライズ失敗で出る例外の切り分け。API 連携やキューメッセージで頻出。 先に結論 よくある原因 1. 本文自体が壊れている 2. 型が合わない 数値が文字列で来ている、配列なの ...
TimeoutException や「操作がタイムアウトしました」系は、どこで時間切れになったかの特定が先。HttpClient・DB・自前の Wait で原因が違う。 先に結論 よくある発生源 切り分け手順 対策の型 ...
ファイル・ディレクトリが見つからない例外。パス文字列のミス、作業ディレクトリ、配布物の欠けがほとんど。 先に結論 切り分け 対策の型 ざっくりまとめ 関連記事
UnauthorizedAccessException は、ファイル/フォルダ/レジストリなどへのアクセスが OS に拒否されたときに出る。権限・読み取り専用・排他ロックが典型。 先に結論 よくある原因 切り分け 対策 ...
SocketException は TCP/UDP 層の失敗。HttpClient や SqlClient の内側に出ることが多く、「接続できない」系の一次切り分けに使う。 先に結論 よく見る SocketError 切 ...