C# 通过从测试中读取App.config简化测试配置
“我的应用”允许用户在app.config中指定其输出中所需的列:C# 通过从测试中读取App.config简化测试配置,c#,C#,“我的应用”允许用户在app.config中指定其输出中所需的列: <?xml version="1.0"?> <configuration> <appSettings> . . . <!-- specify columns you want --> <add key="NameCol" value="true"/> <add key="AddressCol" value="true"/>
<?xml version="1.0"?>
<configuration>
<appSettings>
.
.
.
<!-- specify columns you want -->
<add key="NameCol" value="true"/>
<add key="AddressCol" value="true"/>
<add key="TelCol" value="true"/>
.
.
.
</appSettings>
有没有办法从App.config文件中读取列名,并为上述内容创建for循环?所以应该是这样的。getColNamesFromAppConfig()看起来像什么
columnNames = getColNamesFromAppConfig()
foreach (string colName in ColumnNames)
{
config.AppSettings.Settings.Remove(colName);
}
那么:
foreach (SettingsProperty property in Settings.Properties) // or ConfigurationProperty?
{
// ...
}
顺便说一下,如果我是你,我会考虑在自定义对象中包装设置(由你自己来实现)。如果必须这样做:
config.AppSettings.Settings.Remove("NameCol");
config.AppSettings.Settings.Remove("AddressCol");
config.AppSettings.Settings.Remove("TelCol");
在测试中,这对我来说是一种代码味道。我相信您应该能够为测试目的模拟设置。然而,这是一个品味问题
config.AppSettings.Settings.Remove("NameCol");
config.AppSettings.Settings.Remove("AddressCol");
config.AppSettings.Settings.Remove("TelCol");