2013-03-19 2 views
4

В моем проекте C# используется файл конфигурации по умолчанию (Properties > Settings.settings), в котором хранится файл конфигурации в %userprofile%\AppData\Local\MyApp\MyApp.exe_Url_hashorsomething. Как я могу сделать то же самое без этого последнего каталога или так, чтобы последний каталог не зависел от имени exe и хэша (или какой-либо другой части).Сделать C# user.config не зависит от версии

Кроме того, как я могу его сохранить в Роуминге вместо локального?

+0

Выделите код, который я использовал для переноса настроек в более новую версию приложения. 2 мин. – spender

+0

Извините, я не мог найти этот вопрос во время поиска. Проголосовал за закрытие. –

ответ

1

Вместо того, чтобы избавиться от «хэша или чего-то», я сделал это, добавив строковое свойство CurrentVersion к настройкам. Тогда при запуске, я могу вызвать следующий метод:

public static void UpgradeSettingsIfRequired() 
{ 
    string version = Assembly.GetEntryAssembly().GetName().Version.ToString(); 
    if (Settings.Default.CurrentVersion != version) 
    { 
     Settings.Default.Upgrade(); 
     Settings.Default.CurrentVersion = version; 
     Settings.Default.Save(); 
    } 
} 

Не знаю, как вы бы идти о перемещении их в перемещаемом профиле, хотя. Сожалею.

Смежные вопросы