VS 2015中字符串插值的最终格式是什么?

时间:2015-01-04 15:40:16

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

我不能让字符串插值工作。 MS发现的最新消息是

http://blogs.msdn.com/b/csharpfaq/archive/2014/11/20/new-features-in-c-6.aspx

然而,据说所有都在工作。有人知道字符串插值是否进入VS 2015?有没有关于它的文件?你举个例子吗?

例如,这些格式都不起作用(已编辑):

int i = 42;
var s = "\{i}";  // correction after jon's answer: this works!
var s = $"{i}";  // compiler error
var s = "{{i}}"; // no interpolation

编辑VS 2015 CTP 6 (20.4.2015)

最终版本是

var s = $"{i}"

目前还有Resharper版本支持 ReSharper 9.1.20150408.155143

2 个答案:

答案 0 :(得分:50)

您的第一个表单 在VS2015预览中工作

int i = 42;
var s = "\{i}";

编译并为我跑了。 ReSharper抱怨说,但这是另一回事。

对于C#的 final 版本,它是:

var s = $"{i}";

答案 1 :(得分:14)

字符串插值正在进入VS 2015.它的最新语法(它没有为预览做好准备,但已经进入VS2015 CTP5)是这样的:

string s = $"{i}";

它还使用IFormattable类支持FormattableString结果:

IFormattable s = $"{i}";

最新的设计文档在这里:String Interpolation for C# (v2)

您可以使用http://tryroslyn.azurewebsites.net的最新Roslyn版本在线查看。 Here's the specific example