Como gravar em um arquivo User.Config através do ConfigurationManager?
Estou tentando manter as configurações do usuário em um arquivo de configuração usando o ConfigurationManager.
Desejo definir essas configurações apenas para o usuário, porque as alterações de aplicativos não podem ser salvas no Vista / Win 7 sem privilégios de administrador.
Isso me parece a configuração do usuário, que parece ser salva aqui no Win 7 ([Drive]: \ Users \ [Nome de usuário] \ AppData \ Local \ [ApplicationName] \ [AssemblyName] [hash] \ [Version \)
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal);
Sempre que tento salvar as alterações nesta configuração, recebo esta exceção:
InnerException: System.InvalidOperationException
Message="ConfigurationSection properties cannot be edited when locked."
Source="System.Configuration"
StackTrace:
at System.Configuration.SectionInformation.VerifyIsEditable()
at System.Configuration.MgmtConfigurationRecord.GetConfigDefinitionUpdates(Boolean requireUpdates, ConfigurationSaveMode saveMode, Boolean forceSaveAll, ConfigDefinitionUpdates& definitionUpdates, ArrayList& configSourceUpdates)
Eu tentei adicionar um ConfigurationSection personalizado a esta configuração. Eu tentei adicionar ao AppSettingsSection. Sempre que eu ligoconfig.Save()
lança a exceção acima.
Alguma ideia?
Eu tentei usar a classe ApplicationSettingsBase através do designer Project-> Settings, mas não parece que você pode salvar tipos personalizados com isso. Quero uma funcionalidade semelhante com a capacidade de salvar tipos personalizados.