Я заметил на нескольких машинах, что файл user.config моего приложения каким-то образом повреждается и при открытии оказывается пустым. Я не могу понять, почему это произошло. Есть ли что-то общее, что могло бы вызвать это? Есть ли способ безопасно предотвратить это?
Мой второй вопрос: как восстановить состояние? Я ловлю исключение и удаляю файл user.config, но не могу найти способ восстановить конфигурацию без перезапуска приложения. Все, что я делаю с объектом «Свойства», вызывает следующую ошибку:
«Ошибка инициализации системы конфигурации»
Сброс, перезагрузка и обновление не решают проблему.
Вот мой код для удаления после исключения:
catch (System.Configuration.ConfigurationErrorsException ex)
{
string fileName = "";
if (!string.IsNullOrEmpty(ex.Filename))
fileName = ex.Filename;
else
{
System.Configuration.ConfigurationErrorsException innerException = ex.InnerException as System.Configuration.ConfigurationErrorsException;
if (innerException != null && !string.IsNullOrEmpty(innerException.Filename))
fileName = innerException.Filename;
}
if (System.IO.File.Exists(fileName))
System.IO.File.Delete(fileName);
}