.NET: ApplicationSettingsBase ненадежен?
В более крупном приложении, которое использует параметры приложения, иногда некоторые параметры не сохраняются.
Когда следующий код выполняется, все работает нормально:
Properties.Settings.Default.SomeSetting.X = 42;
Properties.Settings.Default.SomeSetting.Y = true;
Properties.Settings.Default.Save();
Но этот код
Properties.Settings.Default.SomeSetting.X = 42;
Properties.Settings.Default.Save();
Properties.Settings.Default.SomeSetting.Y = true;
Properties.Settings.Default.Save();
вызывает добытчик Y
во время первого звонка Save()
, но не во время второго звонка Save()
и значение Y
не изменится в записанном XML-файле.
Код, конечно, более сложный, настройки гораздо сложнее, и операторы не просто расположены один за другим, а в основном работают так. Я пытался воспроизвести это с помощью простой программы, но не удалось (пока?).
Кстати: файл настроек всегда пишется правильно. Нет никаких исключений, обработанных или необработанных.
Я все еще расследую, однако я хотел спросить вас: ApplicationSettingsBase
работает надежно? Есть опыт с этим?
Спасибо!