C#字符串内插($)是C# 6.0引入的语法糖,支持表达式嵌入、格式说明符、对齐控制、转义及多行字符串,编译期优化为string.Format或string.Concat,兼具可读性、安全性与良好性能。

C# 字符串内插($)是 C# 6.0 引入的语法糖,让字符串拼接和格式化更直观、可读性更强,也比 string.Format 或 + 拼接更安全、更灵活。
基本用法:用 $ 开头,花括号内写表达式
在字符串前加 $,然后在字符串中用 {} 包裹变量或表达式:
string name = "Alice";
int age = 30;
string msg = $"Hello, {name}. You are {age} years old.";
结果:
"Hello, Alice. You are 30 years old."
支持任意合法表达式,比如:{name.ToUpper()}、{age * 2}、{DateTime.Now:yyyy-MM-dd}。
支持格式说明符和对齐控制
在表达式后加冒号 :,可指定标准或自定义格式;加逗号 , 可指定最小宽度与对齐方向:
-
{price:C2}→ 货币格式,保留两位小数,如$19.99 -
{value:D5}→ 十进制补零至 5 位,如00123 -
{text,-10}→ 左对齐、占 10 字符宽(不足右补空格) -
{text,10}→ 右对齐、占 10 字符宽(不足左补空格)
处理大括号、转义和多行字符串
要显示字面量 { 或 },需用两个大括号:{{ 和 }}。
1、对ASP内核代码进行DLL封装,从而大大提高了用户的访问速度和安全性;2、采用后台生成HTML网页的格式,使程序访问速度得到进一步的提升;3、用户可发展下级会员并在下级购买商品时获得差额利润;4、全新模板选择功能;5、后台增加磁盘绑定功能;6、后台增加库存查询功能;7、后台增加财务统计功能;8、后台面值类型批量设定;9、后台财务曲线报表显示;10、完善订单功能;11、对所有传输的字符串进行安全
内插字符串天然支持多行(配合 verbatim 字符串 @),但注意 $ 必须在 @ 前:
$@"Name: {name}
Age: {age}
Notes: {{Important}}"
不能写成 @$"..." —— 顺序错误会编译失败。
性能与注意事项
内插字符串在编译期会被转换为 string.Format 或更优的 string.Concat,简单场景下性能接近甚至优于手动拼接。
- 避免在循环内频繁拼接大量字符串(考虑
StringBuilder) - 表达式中不要放副作用代码(如
{i++}),行为不易预测 - 调试时内插字符串的值可在 VS 中直接悬停查看,非常方便
基本上就这些。用熟了,$ 字符串会让你写格式化逻辑时少出错、少查文档、也更顺手。









