How to save application settings to file?
I have simple application. To be more specific this is Visual Studio Addin. Client needs to specify 开发者_如何学Pythonseveral settings (string, int, decimal etc)
I need to be able to load it at starup time and save if changed.
Let's say for simplicity I have all settings in one class AppSettings.
I can of course use DataContractSerializer to serialize/deserialize AppSettings but I think there must be some standard way.
There are Application Settings from Microsoft:
http://msdn.microsoft.com/en-us/library/a65txexh.aspx?appId=Dev10IDEF1&l=EN-US&k=k(APPLICATIONSETTINGSOVERVIEW);k(TargetFrameworkMoniker-%22.NETFRAMEWORK&k=VERSION=V4.0%22)&rd=true
You can use it like this:
Properties.Settings.Default.DumpHeader = dumpHeader;
Properties.Settings.Default.DumpFooter = dumpFooter;
Properties.Settings.Default.Save();
And loading works similar. But you have to define a .settings file first. It's from the WPF Framework, not sure if it works for WinForms too.
Similar question with a similar answer:
Best practice to save application settings in a Windows Forms Application
I'm a huge fan of flat file storage myself, for example INI files. An article with example code on how to use INI files with .NET can be found here.
Visual Studio Addin is specific case. In this case we can distribute only a .dll file which contain add in code and some .xml with Add-in definition if you want to use standard installation Add-In package. When I had such problem I try to resolve it with Windows registry. You can find a lot of examples how to deal with Windows registry in c#.
精彩评论