From: 3P on
>
> If you leave out of the Using(connection) with a Return to leave the
> function before you let the Using(connection) complete normally to close
> the connection, then you have left things open like the code above.
>
> If you have done the Return and left the Function before you close
> things, then you have the same situation as before.
>
This is not true. Dispose is always called.