3

I have code like this in my code

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

Write line marked with [Conditional("DEBUG")], that means that calls of this method will be omitted in release.

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

But, will it call string.Format for argument of this method in RELEASE or remove it too?

1 Answers1

1

Found answer here - Does using ConditionalAttribute also remove arguments computation?

If the symbol is defined, the call is included; otherwise, the call (including evaluation of the parameters of the call) is omitted.

Community
  • 1
  • 1