字符串插值中的可变小数格式

Variable decimal formating in string interpolation

我已经四处寻找这个,但我不确定字符串插值是否可行(我使用的是 VS2015)。

string sequenceNumber = $"{fieldValuePrefix.ToUpper()}{separator}{similarPrefixes + 1:D4}";

有没有办法让D4成为一个变量? Some say yes, some no。显然,VS2015 C#6.0 可以做到。

这行得通,它将 return 一个类似于 WMT-0021 的字符串,具体取决于 fieldValuePrefix (WMT)、分隔符 (-) 和 similarPrefixes (20) 的值。但我希望 "D4" 部分成为方法参数而不是硬编码在其中。

有什么想法吗?

你可以,但你必须像这样使用显式 ToString 调用:

string format = "D4";
string sequenceNumber = 
    $"{fieldValuePrefix.ToUpper()}{separator}{(similarPrefixes + 1).ToString(format)}";