如何在 C# 6.0 字符串插值中输入引号字符

How do you enter quote characters in C# 6.0 string interpolations

给出

IDictionary<string, string> x;

以前你可以这样做(作为带有引号的参数代码的例子):

string.Format("{0}", x["y"]);

格式化 C# 6.0 字符串插值的正确方法是什么?

$"{x["y"]}"   // compiler error due to the quotes on the indexer value
              // UPDATE:  actually does work, must have had another typo I missed

将引号转义为

\"

不行,正在做

 var b = "y";
 ...
 $"{x[b]}"

看起来很尴尬。

这对我有用:

var dictionary= new Dictionary<string, string>();
dictionary.Add("x","value of x");
Console.WriteLine($"x is {dictionary["x"]}");

确保您的项目设置为使用 C# 语言级别的 6.0 版(这是 VS2015 上的默认选项)。

编辑:您也可以试试here。 (确保检查 "C# 6.0 Beta")。