如何避免C#字符串中的双引号转义?

时间:2012-08-03 08:18:14

标签: c# c#-4.0 double-quotes

在Ruby中,可以使用字符串而无需转义字符串中的双引号,例如Q / Some my string with“double quotes”/

C#是否可以使用字符串而无需转义双引号? 有一个很好的理由我需要编写内联SQL,每次将SQL查询从数据库控制台放到C#代码时,都要放弃双引号非常烦人。

我知道可以使用\“或”作为一个双引号。但是有可能避免逃避双引号吗?

3 个答案:

答案 0 :(得分:9)

不,基本上。您可以选择"foo \" bar"@"foo "" bar",这两者都是您提到过的。但是,坦率地说,我很少在SQL中找到";你有文字字符串'和对象/列名[ / ] - 当然,这可能只是因为我经常使用SQL Server。

涉及任何转义的唯一选择是将SQL移动到外部资源文件,可能是文本文件。但是,这可能比仅使用""更痛苦。

答案 1 :(得分:4)

不,这在C#中是不可能的。您可以在单独的文件中编写SQL,然后从那里读取它。

答案 2 :(得分:0)

  

有一个很好的理由我需要编写内联SQL,这非常烦人   每次我将SQL查询从数据库控制台放到C#时转义双引号   代码。

如果您正在编写内联Sql查询,则在通过SqlParameters传递值时无需担心引号。这样你就不会在每个地方都看到烦人的双引号,甚至你的查询也可以安全地从Sql Injection