不能在内插字符串周围使用文字大括号

Her*_*der 4 c# c#-6.0

我一直在仔细阅读这篇文章,试图将大括号文字放在我的插值字符串周围。

string testString = "foo";
string testResult1 = $"{testString}"; // result = "foo" as expected
string testResult2 = $"{{testString}}"; // result = "{testString}" - UH OH
Run Code Online (Sandbox Code Playgroud)

我的预期结果testResult2是“ {foo} ”。我尝试过用反斜杠转义外部花句,但这不起作用,而且我也没想到它会起作用。如何将文字花括号放在内插字符串变量周围?一个更准确的例子是这样的:

string testResult3 = $"I want to eat some {{testString}} please.";
Run Code Online (Sandbox Code Playgroud)

预期:“我想吃一些 {foo}。”

实际:“我想吃一些 {testString}。”

我怎样才能做到这一点?(我也在和@之间尝试过,但没有快乐。)$"

Her*_*der 6

来自克里斯·R·蒂蒙斯

两个花括号的计算结果为字面花括号。因此,您需要三个花括号:

string testResult2 = $"{{{testString}}}";
Run Code Online (Sandbox Code Playgroud)

...生产{foo}