Reputation: 1817
I'm trying to do something like
string heading = $"Weight in {imperial?"lbs":"kg"}"
Is this doable somehow?
Upvotes: 15
Views: 4157
Reputation: 12171
You should add ()
because :
is used also for string
formatting:
string heading = $"Weight in {(imperial ? "lbs" : "kg")}";
Upvotes: 26
Reputation: 59238
Interpolated strings can contain formatting definitions which are separated from the variable name by colons.
string formatted = $"{foo:c5}"; // 5 decimal places
Since the conditional operator (?:
) also uses a colon, you have to use braces to make it clear for the compiler that you don't want a format specifier:
string heading = $"Weight in {(imperial?"lbs":"kg")}";
Upvotes: 14