動くコード図鑑技術記事現場の渡り方キャリア論すべての記事About
C#

using 宣言の落とし穴: スコープが関数末尾になる

出典: C# using の3形態 — using ステートメント / using 宣言 / await using で業務SE が踏む使い分け形態②: using 宣言 (C# 8+ / 関数末尾まで自動 Dispose) / using 宣言の落とし穴: スコープが関数末尾になる

using 宣言の落とし穴: スコープが関数末尾になる (csharp)#dde7cce30ede
static void ProcessOrders()
{
    using var conn = new SqlConnection(connStr);
    conn.Open();
 
    // ... 50 行ほど何かの処理 ...
 
    using var cmd = conn.CreateCommand();
    cmd.CommandText = "UPDATE Orders SET ...";
 
    // ... さらに 30 行 ...
 
    // ここで関数終わり → conn と cmd が一気に Dispose される
    // ★ 順序: cmd が先・conn が後 (宣言と逆順で Dispose)
}
▸ この snippet は実行結果未収録
▸ 実行結果は未収録です
  • id: #dde7cce30ede
  • lines: 15
  • extracted: 2026-06-10

Source収録記事

この snippet は記事の「形態②: using 宣言 (C# 8+ / 関数末尾まで自動 Dispose) / using 宣言の落とし穴: スコープが関数末尾になる」セクションに登場する。コードの前後の文脈・ハマりどころの解説は記事本文で。

同じ記事から

7
図鑑トップ