CA2000: объект не размещен на всех путях исключения

Хотя эта тема обсуждалась здесь раньше, но предлагаемые решения, похоже, не работают ..

У меня есть кнопка- метод обратного вызова щелчка в моем приложении формы, который показывает диалоговое окно выбора папки:

private void ButtonSelectReporterFolderClick(object sender, EventArgs e)
{
    using (var dialog = new FolderBrowserDialog()) // causes warning
    {
        if (dialog.ShowDialog() == DialogResult.OK)
        {
            this.boxReporterFolderPath.Text = dialog.SelectedPath;
        }
    }
}

Это вызывает предупреждение:

CA2000: Microsoft.Reliability: В методе 'MainWindow.ButtonSelectReporterFolderClick (object, EventArgs)', object '<> g__initLocal 'не удаляется по всем путям исключений. Вызовите System.IDisposable.Dispose для объекта '<> g__initLocal' до того, как все ссылки на него выйдут за рамки.

Я также попытался использовать блок try - finally или даже вызвать dialog.Dispose без каких-либо блоков, все безрезультатно - предупреждение остается, всегда в строке инициализации.

7
задан Efrain 22 July 2011 в 11:11
поделиться