繁体   English   中英

在新的C#6字符串语法中转义引号

[英]Escaping Quotes inside new C# 6 String Syntax

我对C#6的新功能感到非常兴奋,包括新的字符串语法:

var fullName = $"My Name is {FirstName} {LastName}";

但是,我不知道如何在括号内转义引号来执行以下操作:

bool includePrefix = true;

var fullName = $"My name is {includePrefix ? "Mr. " : ""}{FirstName} {LastName}";

C#6不喜欢这样。 在第二种情况下,我不得不恢复使用String.Format 是否可以使用新语法对引号进行转义?

更新:是的,我尝试使用\\转义符,但无法识别。

将您的逻辑包装在括号的括号内:

var fullName = $"My name is {(includePrefix ? "Mr. " : "")}{FirstName} {LastName}";

定期转义引号需要使用斜杠(即\\" )。

但是,这不是这里的问题,因为您不需要转义,只是在表达式上缺少括号。

这有效:

bool includePrefix = true;
var fullName = $"My name is {(includePrefix ? "Mr. " : "")}{FirstName} {LastName}";

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM