The Resource Acquisition Is Initialization (RAII) idiom and the try-finally statement form the backbone of the traditional approaches to writing exception safe programming.
My question is: Is there something like Scope Guard Statement available on C#?
There's not a direct translation of the scope guard idiom built into C# or in the BCL, but Alex Rønne Petersen wrote up a blog post [dead link — see below] with a solution that leverages the
IDispoable
interface and C#'susing
statements to do something similar to what you're looking for.Here is a copy of Alex's blog post found at WebArchive: