Следующий код генерирует предупреждение CA2000:
Myclass myclass = null;
try
{
myclass = new Myclass { Name = "a name" };
}
finally
{
if (myclass != null)
{
myclass.Dispose();
}
}
я нашел некоторые темы с той же проблемой, и как я понимаю, проблема в том, что компилятор генерирует для конструктора временную переменную, и для этой переменной я не вызываю Dispose().
var tmp = new MyClass();
tmp.Name = "a name";
myclass = tmp:
поэтому мой вопрос в том, есть ли решение с использованием инициализатора объекта, которое не генерирует предупреждение ca2000.
заранее спасибо.
using
, но даже там генерируется такое же предупреждение. - person Damien_The_Unbeliever   schedule 05.01.2012IDisposable
. - person Damien_The_Unbeliever   schedule 05.01.2012