开发者

In a given C# Windows Forms application/WPF, where are user settings usually stored?

I was thinking either:

  1. An Appconfig file

  2. A generic .XML file and have the program load values at launch.

What is the best way to do this? A website with a best user tutorial p开发者_如何学编程erhaps?


Please see Using Settings in C#:

The .NET Framework 2.0 allows you to create and access values that are persisted between application execution sessions. These values are called settings. Settings can represent user preferences, or valuable information the application needs to use. For example, you might create a series of settings that store user preferences for the color scheme of an application. Or you might store the connection string that specifies a database that your application uses. Settings allow you to both persist information that is critical to the application outside of the code, and to create profiles that store the preferences of individual users.


The answer to your question depends on the persistence model for the settings:

  • are settings per-user based or machine-wide?
  • are settings application specific or can/do they need to be used/discovered by other applications as well?
  • are settings default values known at design time or are they generated at install time?
  • are settings local to particular machine or can/will they be roamed?

The standard .NET settings support local per-user settings (when the user runs as a regular user) and local machine-wide settings (when the user runs as administrator), both with build-time machine-wide default values and for application-use only. This addresses the majority of scenarios. There is some advanced functionality there which allows to use the .NET Configuration classes with configuration files in different locations, which can allow for roamable and third-party discoverable settings as well; however, there is no Visual Studio tooling support for such scenarios.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜