たとえば、Sharepoint を使用していて (これは他のオブジェクト モデルにも当てはまります)、ステートメントの途中で、IDisposable SPWeb オブジェクトを作成するメソッド (この場合は "OpenWeb()") を呼び出します。ここで、SPWeb オブジェクトへの参照がないため、SPWeb オブジェクトで Dispose() を呼び出すことができません。 では、このメモリ リークについて心配する必要はありますか?
SPUser spUser = SPControl.GetContextSite(HttpContext.Current).OpenWeb().SiteUsers[@"foo\bar"];
ステートメントを複数の行に分割して、Dispose を呼び出すための SPWeb 参照を取得できることはわかっています。
SPWeb spWeb = SPControl.GetContextSite(HttpContext.Current).OpenWeb();
SPUser spUser = spWeb.SiteUsers[@"foo\bar"];
spWeb.Dispose();
私の質問は美学に関するものではなく、参照がないため、明示的に Dispose() を呼び出すことができない IDisposable オブジェクトに何が起こるかについての質問であることに注意してください。
最初に質問した時、言葉足らずで申し訳ありませんでした。それ以来、私はそれを言い換えました。これまでのすべての応答に感謝します。