config中的运行时指令

时间:2010-11-26 17:16:11

标签: c# if-statement app-config compiler-directives

阱, 假设我有以下if语句:

    if (a)
    {
       // do something.
    }

是否可以仅在app.config中的某个值为true时运行该语句而不包含另一个值?

就像制作预处理器#if指令一样,只是不用于预处理,而是用于运行时。

有这样的事吗?一个JIT指令或类似的东西?

2 个答案:

答案 0 :(得分:0)

if (ConfigurationManager.AppSettings["condition"] == "true" && a)
{
   // do something.
}

答案 1 :(得分:0)

对于清洁度和人员偏好,我总是将配置检查抽象为只读属性:

private bool A
{
    get
    {
        return ConfigurationManager.AppSettings["condition"] == "true" && a;
    }
}

然后你的陈述变成:

if (A)
{
    //do something.
}

A是一个可怕的名字,但你明白了。

ConfigurationManager是获取配置设置的推荐API,配置设置是更改运行时行为的推荐方法。