Условный атрибут и вычисляемые аргументы для метода

У меня есть такой код в моем коде

Debug.WriteLine($@"Operation time: {elapsedMilliseconds}ms");

Напишите строку, помеченную [Conditional("DEBUG")], это означает, что вызовы этого метода будут опущены в выпуске.

[Conditional("DEBUG")]
[__DynamicallyInvokable]
public static void WriteLine(string message, string category)
{
  TraceInternal.WriteLine(message, category);
}

Но он вызовет string.Format для аргумента этого метода в RELEASE или тоже удалит его?

1 ответ

Найденный ответ здесь - Использование ConditionalAttribute также удаляет вычисление аргументов?

Если символ определен, вызов включен; в противном случае вызов (включая оценку параметров вызова) опускается.

Другие вопросы по тегам