Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

OK so I'm not so sure that "project" is the right term, but for my purposes, I define "project" as similar to what Visual Studio uses, or Microsoft word - files that the user can open and work on and then save, and when the user runs the application again the program is aware of the files that were worked on last time the application was open.

So I ask, what is a good design strategy for retaining history of user activities and files like Visual Studio projects?

share|improve this question
up vote 1 down vote accepted

Persistence of user activity and preferences

There are different approaches depending what technology is used at client side. In your case of Windows forms it has very good support from .NET Framework itself.

In short, it is all about creating, loading, and saving user settings.

More detailed posts and walk through are available: - Application Settings Architecture - How To Persist Windows Form State - Painless Persistence of Windows Forms Positions

A good source to Enhancing Windows Forms Applications can be referenced in MSDN article.

share|improve this answer

You want persistence (the ability of user data to survive across different invocations of the same applications). There are many ways to implement it, and your product description is so general that it is hard to predict which will be best for you. Some possible directions to look at are databases, serialization, memory dumps, and many variations of home-grown persistence approaches (rarely useful unless your requirements are really unusual). Please search for any of those things in your favorite information retrieval tool and come back for more information exchange.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.