0

我在<% %>ac# asp.net 页面的文字中嵌入了以下 c# 代码

string commandString = "SELECT tblData.Content " +
                        "FROM tblData " +
                        "WHERE (tblData.ref = N\'%"+myCurrentREF+"%\')";

这破坏了我的代码,因为它显然不能使用\'转义字符。为什么会这样?其他转义字符\"都在工作,为什么不\'工作?

4

3 回答 3

1

如果您选择 " 作为字符串终止符,则序列 \" 是“工作”。

如果您使用 @" 作为初始字符串终止符,则序列 \" 不会转义引号(但 "" 会)。

所以 \" 不是“通用”转义序列,而 \' 不是。

于 2010-04-28T14:30:28.550 回答
0

您不需要转义单引号。但如果你这样做,你总是可以尝试@方法。

于 2010-04-28T14:30:11.687 回答
0
string commandString = "SELECT tblData.Content " +
                    "FROM tblData " +
                    "WHERE (tblData.ref = '%"+myCurrentREF+"%')";

这是正确的方法,但不是 = 并不意味着喜欢?,或者你的字符串总是以 %?

于 2010-04-28T14:34:49.480 回答