Mono не записывает настройки по умолчанию - PullRequest
6 голосов
/ 06 апреля 2010

Вот моя проблема. Если я использую только один проект Windows Forms и вызываю только - Settings.Default.Save() при его запуске, Mono создает файл user.config со значением по умолчанию для каждого параметра. Это хорошо, пока все хорошо.

Но теперь я добавляю проект библиотеки классов, на который ссылается проект Windows Forms, и перемещаю настройки из проекта Windows Forms в проект библиотеки классов. Теперь я делаю то же самое - Settings.Default.Save() и, к моему большому удивлению, Mono создает файл user.config со значениями EMPTY (НЕ значения по умолчанию) для каждого параметра ?! В чем разница между настройками в проекте Windows Forms или в библиотеке классов? И, кстати, это не проблема операционной системы. Это проблема Mono, потому что она не работает как в Windows, так и в Linux. Если я не использую Mono, все в порядке, но я должен перенести свое приложение на Linux, поэтому я должен использовать Mono. Я очень расстроен, он блокирует проект :(

Редактировать: если я пишу Settings.Default.Font = Settings.Default.Font; перед вызовом Settings.Default.Save(), то он работает правильно. Что это?!

Заранее благодарим за любые ваши предложения.

С уважением, Петар

Ответы [ 2 ]

1 голос
/ 06 апреля 2010

ОК, если кто-то еще вступит в эту ужасную проблему, мне удалось обойти ее следующим образом:

Settings.Default.MySetting1 = Settings.Default.MySetting1;
Settings.Default.MySetting2 = Settings.Default.MySetting2;
.........................................................
Settings.Default.MySettingN = Settings.Default.MySettingN;

Я выполняю этот код при запуске приложения.

0 голосов
/ 06 апреля 2010

От моно разработчика "если кто-то сообщит об ошибке, я могу исправить это более или менее скоро ;-)". Это похоже на тривиальное исправление, просто сохраните всю вышеуказанную информацию на http://bugzilla.novell.com, и кто-нибудь сможет взглянуть на нее. Если вы включите небольшой тестовый пример, который демонстрирует идеальную ошибку, так как ее можно добавить в набор тестов, чтобы предотвратить повторение этой ошибки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...