Есть ли способ расширить блок using
на С# таким образом, чтобы делегат был вторым параметром рядом с объектом IDisposable и выполнялся каждый раз, когда исключение выбрасывается внутри этого блока using
?
Представьте, что у нас есть делегат, что-то вроде этого:
public delegate void ExceptionHandler(Exception ex);
И предположим, что у меня есть метод, который соответствует этому делегату, примерно так:
public void Log(Exception ex)
{
// Some logging stuff goes here
}
И я хочу сделать что-то вроде этого:
using(SqlConnection connection = new SqlConnection(""), Log)
{
}
Есть ли способ расширить С# таким образом?