主要问题:
有没有办法在C#中的字符串中插入一个双引号
信息:
我试图在C#中执行类似以下SQL Select语句的操作
SELECT Name FROM Production.Product
WHERE CONTAINS(Name, '"chain*"');
Run Code Online (Sandbox Code Playgroud)
我把它解释如下:
string selectCommand= @"select Name from Production.Products
WHERE contains (Name,'\"" + chain+ "*\"')");
Run Code Online (Sandbox Code Playgroud)
但我得到的字符串:
"WHERE包含(名称,'\"链\"')"
我也尝试过这个SOF 问题,但它也没有用!:
string selectCommand= @"select Name from Production.Products
where contains (doc.document_name,'"""""" + full + """"""')");
Run Code Online (Sandbox Code Playgroud)
如果查看字符串文字的文档,您会发现有两种格式.常规格式,您必须转义所有以下字符:
', ", \, 0, a, b, f, n, r, t, u, U, x, v.
Run Code Online (Sandbox Code Playgroud)
所以你的字符串应该写成如下:
string query = "WHERE CONTAINS(Name, \'\"chain*\"\');";
Run Code Online (Sandbox Code Playgroud)
或逐字文字,前面带有'at'符号,您只能通过'加倍'来转义双引号:
string query = @"WHERE CONTAINS(Name, '""chain*""');";
Run Code Online (Sandbox Code Playgroud)
所以只需从字符串中删除"@"即可.
这是因为你@的字符串开头有一个
string selectCommand= "select Name from Production.Products where contains (doc.document_name,\'\"" + full + "*\"\');";
Run Code Online (Sandbox Code Playgroud)
你基本上需要逃避'和"
| 归档时间: |
|
| 查看次数: |
15583 次 |
| 最近记录: |