директивы времени выполнения в конфиге - PullRequest
0 голосов
/ 26 ноября 2010

хорошо, допустим, у меня есть следующее утверждение if:

    if (a)
    {
       // do something.
    }

возможно ли выполнить оператор только в том случае, если определенное значение в app.config имеет значение true, а не другое при переносе?

это похоже на создание директивы препроцессора #if, только не для предварительной обработки, а для времени выполнения.

есть такая вещь? директива JIT или что-то в этом роде?

Ответы [ 2 ]

0 голосов
/ 26 ноября 2010

Для чистоты и личных предпочтений я всегда абстрагирую проверку конфигурации в свойство только для чтения:

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

тогда ваше утверждение становится:

if (A)
{
    //do something.
}

А это ужасное имя, но вы поняли.

ConfigurationManager является рекомендуемым API для получения параметров конфигурации, а параметры конфигурации - рекомендуемым способом изменения поведения во время выполнения.

0 голосов
/ 26 ноября 2010
if (ConfigurationManager.AppSettings["condition"] == "true" && a)
{
   // do something.
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...