Хобрук: Ваш путь к мастерству в программировании

Mono не записывает настройки по умолчанию

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

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

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

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

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

06.04.2010

  • Это похоже на ошибку, пожалуйста, отправьте отчет об ошибке на странице bugzilla.novell.com/index.cgi 06.04.2010

Ответы:


1

Хорошо, на случай, если кто-то еще столкнется с этой ужасной проблемой, мне удалось ее обойти следующим образом:

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

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

06.04.2010

2

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

06.04.2010
  • Хорошо, я отправлю отчет об ошибке как можно скорее. 06.04.2010
  • Новые материалы

    HMTL - Многозадачное обучение для решения задач НЛП
    Достижение результатов SOTA путем передачи знаний между задачами Область обработки естественного языка включает в себя десятки задач, среди которых машинный перевод, распознавание именованных..

    Решения DBA Metrix
    DBA Metrix Solutions предоставляет удаленного администратора базы данных (DBA), который несет ответственность за внедрение, обслуживание, настройку, восстановление базы данных, а также другие..

    Начало работы с Блум
    Обзор и Codelab для генерации текста с помощью Bloom Оглавление Что такое Блум? Некоторые предостережения Настройка среды Скачивание предварительно обученного токенизатора и модели..

    Создание кнопочного меню с использованием HTML, CSS и JavaScript
    Вы будете создавать кнопочное меню, которое имеет состояние наведения, а также позволяет вам выбирать кнопку при нажатии на нее. Финальный проект можно увидеть в этом Codepen . Шаг 1..

    Внедрите OAuth в свои веб-приложения для повышения безопасности
    OAuth — это широко распространенный стандарт авторизации, который позволяет приложениям получать доступ к ресурсам от имени пользователя, не раскрывая его пароль. Это позволяет пользователям..

    Классы в JavaScript
    class является образцом java Script Object. Конструкция «class» позволяет определять классы на основе прототипов с чистым, красивым синтаксисом. // define class Human class Human {..

    Как свинг-трейдеры могут использовать ИИ для больших выигрышей
    По мере того как все больше и больше профессиональных трейдеров и активных розничных трейдеров узнают о возможностях, которые предоставляет искусственный интеллект и машинное обучение для улучшения..