| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > Проблема с конфигом |
| Автор: Competitor 22.6.2007, 17:03 | ||||||
| Привет всем. При попытке писать в конфиг:
Ошибка: Property or indexer 'WriteToByteArray.Settings1.TestData1' cannot be assigned to -- it is read only. Доюавил вручную в дизайнер.cs:
Стал получать exception: Configuration system failed to initialize. Сам конфиг:
В чем моя ошибка? |
| Автор: tol05 23.6.2007, 15:32 |
нельзя трогать код, сгенерированный студией. Дело в том, что при переходе с кода в дизайнер, с дизайнера в код, студия сравнивает значения, введенные тобой через UI и написанный код. Если что-то самому писать - выскакивает всякий булшит... Вот динайнер и кричит, что не может провести инициализацию. По поводу первой части вопроса: я когда-то имел дело с System.Configuration и у меня воспоминания остались самые неприятные. Пришлось в конце-концов отказаться от него (для решения моей хитрой задачи). Кривой этот намеспейс. Ну, или как в той фразе: "Вы не любите кошек? Да вы просто не умеете их готовить!" У меня тоже проблемы были именно при записи настроек, менял я как раз их без проблем... То кричала студия, что файл такой уже есть и залочен, то эксепшены кидала... Дай весь код. Посмотрю. Что такое Settings1? где лежит конфиг относительно приложения? Это ведь новая долбанная фича второго дотнета - не просто разрешать конфигурировать через API, но и требования по безопасности усилить... |
| Автор: stab 24.6.2007, 05:23 |
| код, который вручную написал удали, и поменяй scope у TestData1 на User, а не Application. настройки приложения (scope=Application) не могут меняться пользователем (читай: во время выполнения). |
| Автор: Competitor 25.6.2007, 10:35 | ||||||
| Пересоздал конфиг. Теперь scope=User. Exception не вылетает, но изменения не сохранются. конфиг:
Код
Код дизайнера:
Кто-нить знает, из-за чего может быть проблема. |
| Автор: stab 26.6.2007, 02:37 |
| settingsForTest.Save() точно вызывается? бряк на него поставь, проверь выполняется ли эта строчка. кстати, у х2 назначаемое из кода значение совпадает со значением по умолчанию. может запутался при тестах? |