使用Properties.Settings.Default和设置备用配置文件?

时间:2012-07-25 17:34:40

标签: c# visual-studio-2010 settings settings.settings

问候StackOverflow,

在过去的项目中,我已经习惯使用Visual Studio中的设置设计器来创建设置文件。这在过去运作良好。在我的最新项目中,我希望拥有相同Settings类的多个版本a.k.a.配置文件,一个具有所有属性的生产/默认值,另一个具有测试值。

在搜索以查看是否可行时,我注意到在Settings.settings文件的XML中有多个提示可能有多个设置配置文件。例如,在Settings.settings文件中,<SettingsFile>标记的CurrentProfile属性始终设置为CurrentProfile="(Default)"。在该标记内部有一个名为<Profile />的空标记。最后,每个设置的<Value>标记都有一个Profile属性,通常会显示Profile="(Default)"

现在,我已经尝试查看<Profile />标记的内容以及我是否可以将其用于某些内容,但我的搜索都没有提供任何内容。

最终我想知道是否有一种方法可以使用相同的Settings类的不同配置文件,每个配置文件都有自己的默认值,因此我可以使用它在我的代码中可能会显示如下:

Properties.Settings defaultSettings = Properties.Settings.Default;
Properties.Settings testSettings = Properties.Settings.Test;

如果有人知道在哪里可以找到设置文件的XML Schema,或者我要求的是什么,请告诉我。

1 个答案:

答案 0 :(得分:1)

我使用Enterprise library在不同的开发环境中设置不同的配置。它需要一点点习惯,但有一个很好的配置工具,它将读取配置文件并显示所有的应用程序设置。您可以为计划使用的每个环境创建增量文件。我将合并配置可执行文件添加到项目中的 lib 文件夹中,并通过添加一些构建事件来进行合并,以便在构建时进行合并,以便文件自动为部署:

"$(ProjectDir)lib\MergeConfiguration.exe" "$(ProjectDir)web.config" "$(ProjectDir)lib\Delta_Dev.dconfig" "$(ProjectDir)Configurations\web.config-dev.config"