What is the final format for string interpolation in VS 2015?

廉价感情. 提交于 2019-11-26 16:48:44

问题


I can't get string interpolation to work. Last news from MS I found was

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

However all that is said there is not working. Anyone knows if string interpolation made it into VS 2015? Is there any documentation about it? Can one you give an example?

For instance, none of these formats work (edited):

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

edit about VS 2015 CTP 6 (20.4.2015 )

The final version is

var s = $"{i}"

also supported by the current Resharper version ReSharper 9.1.20150408.155143


回答1:


Your first form did work in the VS2015 Preview:

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

That compiled and ran for me. ReSharper complained, but that's a different matter.

For the final release of C#, it is:

var s = $"{i}";



回答2:


String interpolation is making it to VS 2015. Its latest syntax (which wasn't ready for the preview, but made it into VS2015 CTP5) is this:

string s = $"{i}";

It also supports am IFormattable result using the FormattableString class:

IFormattable s = $"{i}";

The latest design documentation is here: String Interpolation for C# (v2)

You can check that online using the latest Roslyn version with http://tryroslyn.azurewebsites.net. Here's the specific example.



来源:https://stackoverflow.com/questions/27767173/what-is-the-final-format-for-string-interpolation-in-vs-2015

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!