读取嵌套的花括号作为字符串的一部分

So_*_*_oP 0 .net c# string

我有这样的密码iD&NAAY#{.x}NqpzK|%.

当我试图将此存储在这样的字符串变量中时

string password = $"\"iD&NAAY#{.x}NqpzK|%\""

我在这部分得到了一个编译时错误(无效的表达式术语) {.x}

如何避免这种情况并将此密码作为完整字符串类型读取?

Daw*_*žan 5

只是不要使用插值字符串,这意味着,定义没有$符号前缀的字符串.

当您使用$符号前缀时,C#正在解析您的字符串,尝试在其中查找变量引用并将其替换为变量值.字符串中变量引用的格式是{variable_name}.

var test = "abcd";
var interpolated_string = $"Test: {test}";
Run Code Online (Sandbox Code Playgroud)

变量interpolated_string将包含字符串Test: abcd.

如果删除$符号前缀,则不会处理该字符串,它将被视为文字:

var test = "abcd";
var interpolated_string = "Test: {test}";
Run Code Online (Sandbox Code Playgroud)

该变量现在interpolated_string将包含该字符串Test: {test}.