Backporting C#插值字符串运算符$

时间:2016-07-18 20:02:17

标签: c# string c#-4.0 c#-6.0

我想在旧版本的c#

中重用一些代码
List<string> programId = new List<string>(){"1","2","3"}
string.Join(",", Id.Select(x => $"'{x}'"))

如何将$运算符转换为旧版本的C#?

2 个答案:

答案 0 :(得分:9)

$"'{x}'"

转换为

string.Format("'{0}'", x)

在旧版本的C#中。

实际上,String Interpolation版本只是编译器语法糖。如果您对生成的程序集进行反编译,则会发现它全部解析为string.Format次调用。

答案 1 :(得分:4)

这个怎么样?

string.Join(",", Id.Select(x => string.Format("'{0}'", x)))