VB.NET中对应C# $@字符串语法的等效写法是什么?
VB.NET 对应 C# $@ 多行插值字符串的写法(.NET Framework 4.8.1 适用)
在VB.NET中,要实现和C#里$@(插值+逐字多行字符串)完全等效的效果,只需将$(插值前缀)和@(逐字前缀)组合使用,直接编写多行字符串即可,无需为每行添加引号或加号。
基础用法示例
C# 写法对比
var userId = 123; var sql = $@" SELECT * FROM Users WHERE Id = {userId} ORDER BY CreateTime DESC";
VB.NET 等效写法
Dim userId As Integer = 123 Dim sql = $@" SELECT * FROM Users WHERE Id = {userId} ORDER BY CreateTime DESC"
关键注意事项
$和@的顺序可以互换(@$"也有效),核心是同时启用插值和逐字特性- 逐字字符串会完整保留所有换行、空格和格式,直接粘贴SQL语句即可
- 如果字符串中需要包含双引号,只需在逐字字符串里写两个连续双引号
"",例如:Dim userName = "Alice" Dim sql = $@" SELECT * FROM Users WHERE Id = {userId} AND Name = ""{userName}""" - 若项目中此写法无效,检查VB语言版本:在项目属性→编译→高级编译选项中,将“语言版本”设置为15.0及以上(.NET Framework 4.8.1默认支持,但旧项目可能需要手动调整)
内容的提问来源于stack exchange,提问作者jp2code
相关产品推荐
相关产品推荐

