在PHP中,我可以执行以下操作:
$name = 'John';
$var = "Hello {$name}"; // => Hello John
C#中是否有类似的语言构造?
我知道有,String.Format();
但是我想知道是否可以在不调用字符串的函数/方法的情况下完成。
Answers:
此功能不是C#5或更低版本内置的。
更新:C#6现在支持字符串插值,请参阅较新的答案。
推荐的方法是使用String.Format
:
string name = "Scott";
string output = String.Format("Hello {0}", name);
但是,我编写了一个名为SmartFormat的小型开放源代码库,该库进行了扩展,String.Format
以便可以使用命名的占位符(通过反射)。因此,您可以执行以下操作:
string name = "Scott";
string output = Smart.Format("Hello {name}", new{name}); // Results in "Hello Scott".
希望你喜欢!
使用以下方法
1:方法一
var count = 123;
var message = $"Rows count is: {count}";
2:方法二
var count = 123;
var message = "Rows count is:" + count;
3:方法三
var count = 123;
var message = string.Format("Rows count is:{0}", count);
4:方法四
var count = 123;
var message = @"Rows
count
is:{0}" + count;
5:方法五
var count = 123;
var message = $@"Rows
count
is: {count}";