The answer to this question is nontrivial. I assume that you are storing the actual content, not just the settings or window positions. The first option is to use one of the built-in serializers to read / write XML or JSON. Or perhaps use one of ServiceStack.
If you cannot easily store all content in memory, we may consider using a database. The only time I have ever used a heavyweight database such as MS SQL Server or Oracle would be where you have an enterprise application with full-time employees who manage the databases.
For simple file storage for each application, you can use MS SQL Embedded or Express editions, but do not. It is slow. He has stupid restrictions. You can look at the connection string parameters on the Internet to point to the local mdf file if you really want to go down this road.
Rather, you should probably use the Sqlite.NET shell (it is now managed and provided by Sqlite.org). If you want to use shallow ORM, I also recommend doing this. You can watch ServiceStack or many other options in this arena. (Just do a web search for lite .net orm).
source share