ktmedlin
asked on
Save user settings in .Net Windows application
I am writing a Windows application using C#.Net. What is the preferred method for storing user settings/preferences without writing to the registry?
ASKER
The user's settings must be stored on the hard drive (not in memory) so that the same settings can be used when the user has closed and reopened the app. Storing settings in a database is not an option. Need to use a file of some type but don't know what kind. I assume XML would be the best solution and I have heard of Settings.settings and App.config but I don't know which one to use or how to use them.
ASKER CERTIFIED SOLUTION
membership
Create a free account to see this answer
Signing up is free and takes 30 seconds. No credit card required.
READ SETTINGS:
dsConfig = New DataSet
dsConfig.ReadXml('c:\file.
msgbox dsConfig.Tables(0).Rows(0)
WRITE SETTINGS:
dsConfig.Tables(0).Rows(0)
dsConfig.AcceptChanges()
dsConfig.WriteXml('c:\file
XML FILE:
<?xml version="1.0" standalone="yes"?>
<Settings>
<MYTABLE>
<mydatafield>Hello there this is a setting</mydatafield>
<anotherfield>bla bla Bla</anotherfield>
</MYTABLE>
</Settings>
One possible solution is if you saved the user settings in an object, to serialize the object to an xml file. This allows for a clean and easy way to save and retrieve the data. There is also an msdn article on different ways to approach this here: http://msdn.microsoft.com/en-us/library/ms973902.aspx.
ASKER
Im going with the XML file option. Thanks to all the experts for the comments.
Another way (Recommended) is to store this into database tables.
Anurag