创建配置或INI文件以存储用户设置首选项

时间:2016-01-05 13:36:58

标签: c# winforms config ini

我编写了一个可以在两种不同模式下运行的应用程序:test or not。我也有能力根据旗帜追踪。我想有一个配置或INI文件来设置这些标志,以防止每次我想设置这些标志时更改代码。我不知道该怎么做。 我是否需要通过visual studio添加新项目:application config file?或者我需要创建一个INI文件?它是否允许我更改安装文件夹中的值而无需更改代码?

我尝试将一个应用程序配置文件添加到项目中,但我无法设置自己的值:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
   <userSettings>
      <add key="TestEnvironment" value="true" />
      <add key="Tracing" value="true" />
   </userSettings>
</configuration>

我收到7条警告: 主要的一个是:无法找到元素userSettings的架构信息

2 个答案:

答案 0 :(得分:2)

您可以使用 appSettings 元素来存储您的键值对:

<configuration>
  <appSettings>
    <add key="TestEnvironment" value="true" />
    <add key="Tracing" value="true" />
  </appSettings>
</configuration> 

在应用程序中,您可以像这样阅读它们:

bool testEnv = bool.Parse(System.Configuration.ConfigurationManager.AppSettings["TestEnvironment"]);
bool tracing = bool.Parse(System.Configuration.ConfigurationManager.AppSettings["Tracing"]);

(确保已将System.Configuration添加到参考文献中)

答案 1 :(得分:2)

如果您使用的是Visual Studio,则可以转到项目属性并进入“配置”选项卡。在那里,您可以根据需要添加任意数量的设置,Visual Studio会将它们添加到自动app.config配置文件中。

使用此系统,您可以使用您在配置文件中提供的名称从代码访问您的设置,如下所示:

onListChange: function(e) {
                this.set("ID", e.data.ID);
                this.set("ParentItemCategoryTypeID", e.data.ParentItemCategoryTypeID);
                this.set("Code", e.data.Code);
                this.set("Name", e.data.Name);
                this.set("IsActive", e.data.IsActive);
                this.set("Sequence", e.data.Sequence);
}