Я хочу изменить значение в "MyProject.Properties.Settings.Default.Property", но выдает мне ошибку и эту ошибку;

Код серьезности Описание Ошибка состояния подавления строки файла проекта CS0200 Свойство или индексатор 'Settings.Version' нельзя назначить - оно доступно только для чтения

Как я могу решить эту проблему? Или какой я могу попробовать другой метод?

21.03.2017 РЕДАКТИРОВАТЬ - Я РЕШЕН ПРОБЛЕМУ ЭТОМ МЕТОДОМ

Properties.Settings.Default["Version"] = File.GetLastWriteTime(mainDllPath).ToString("ddMMyyyyhhmmss");
Properties.Settings.Default.Save();
3
Murat ÖNER 20 Мар 2017 в 17:04

2 ответа

Лучший ответ

От Microsoft:

Параметры в области приложения доступны только для чтения и могут быть изменены только во время разработки или путем изменения файла .config между сеансами приложения. Однако параметры, определяемые пользователем, могут быть записаны во время выполнения точно так же, как вы изменили бы любое значение свойства. Новое значение сохраняется в течение сеанса приложения. Вы можете сохранить изменения настроек между сеансами приложения, вызвав метод Save.

Как: записывать и сохранять настройки пользователя во время выполнения с помощью C #:

Получите доступ к настройке и присвойте ей новое значение, как показано в этом примере:

Properties.Settings.Default.myColor = Color.AliceBlue;

Если вы хотите сохранить изменения настроек между сеансами приложения, вызовите метод Save, как показано в этом примере:

Properties.Settings.Default.Save();

Пользовательские настройки сохраняются в файле в подпапке локальной папки данных скрытого приложения пользователя.

Подробнее об использовании настроек в c # можно узнать здесь .

4
Marcello 20 Мар 2017 в 14:38

Похоже, вы пытаетесь редактировать это свойство только для чтения во время выполнения из кода. Вы просто не можете этого сделать.

Чтобы изменить свою версию, вам нужно получить доступ к свойствам проекта через обозреватель решений и изменить его там.

В этом конкретном случае номер версии добавляется к метаданным скомпилированного исполняемого файла и должен быть доступен для хост-ОС без фактически выполняемого кода. Так что изменение этого OTF действительно будет контрпродуктивным.

3
Persistence 20 Мар 2017 в 14:15