web-dev-qa-db-ja.com

VS 2015での文字列補間の最終的な形式は何ですか?

文字列補間が機能しません。私が見つけたMSからの最後のニュースは

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

ただし、そこには機能していないと言われています。文字列補間がVS 2015に組み込まれたかどうかは誰でも知っていますか?それに関する文書はありますか?例を挙げていただけますか?

たとえば、これらの形式はどれも機能しません(edited):

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でもサポートされています

34
citykid

最初のフォームdidは、VS2015プレビューで機能します。

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

コンパイルして実行しました。 ReSharperは不満を言ったが、それは別の問題です。

C#の最終リリースの場合、次のようになります。

var s = $"{i}";
50
Jon Skeet

文字列補間によりVS 2015になりました。最新の構文(プレビューの準備はできていませんが、 VS2015 CTP5 になっています)は次のとおりです。

string s = $"{i}";

また、IFormattableクラスを使用したam FormattableString結果もサポートしています。

IFormattable s = $"{i}";

最新の設計ドキュメントはこちら: C#(v2)の文字列補間

http://tryroslyn.azurewebsites.net を使用して、最新のRoslynバージョンを使用してオンラインで確認できます。 具体的な例はこちら

14
i3arnon