我正在编写一个具有一些应用程序级别配置的应用程序,但也有一些应该基于每个用户完成的配置。
我正在为BrowserStack编写一个配置部分来使用App.config文件(每个msdn),它让我可以定义需要存储的重要内容,但是,有些内容属于在不属于版本控制的配置文件中。在此特定实例中,browserstack.user
和browserstack.key
(从their documentation检索到的)属于单独的配置文件,并且不应该签入。
c#配置是否允许这种行为,或者我是否必须修改我的配置部分才能执行此操作? (包括在下面以供参考)
public class BrowserStackSettings : ConfigurationSection
{
[ConfigurationProperty("hubUrl", DefaultValue = "http://hub-cloud.browserstack.com/wd/hub/", IsRequired = false)]
public string HubUrl
{
get
{
return (string)this["hubUrl"];
}
set
{
this["hubUrl"] = value;
}
}
[ConfigurationProperty("user", IsRequired = true)]
public string User
{
get
{
return (string)this["user"];
}
set
{
this["user"] = value;
}
}
[ConfigurationProperty("key", IsRequired = true)]
public string Key
{
get
{
return (string)this["key"];
}
set
{
this["key"] = value;
}
}
}
答案 0 :(得分:2)
C#有一个名为settings的东西。一个设置的范围可以是" user"或"申请"。无法轻松更改应用程序设置。它们存储在Program Files的app's .config文件中。但是可以更改用户设置,当然每个用户可以有所不同。这些设置存储在用户配置文件中的另一个.config文件中。
因此,app应该以某种方式允许用户更改这些设置,并保存它们只需调用Properties.Settings.Default.Save();