C# 如何处理asp.net web搜索中的单个报价
如何使用SQL Server后端数据库处理asp.net web搜索中的特殊字符。例如,单引号和双引号等。替换单引号C# 如何处理asp.net web搜索中的单个报价,c#,asp.net,sql-server,C#,Asp.net,Sql Server,如何使用SQL Server后端数据库处理asp.net web搜索中的特殊字符。例如,单引号和双引号等。替换单引号“或双引号”的操作如下 StrQuery = "Select * from TableName Where Keyword LIKE '%" + TxtSearchBox.Text + "%'"; StrQuery = StrQuery.Replace("'", "\'"); StrQuery = StrQuery.Replace('"', "\""); StrQuery = St
“
或双引号”
的操作如下
StrQuery = "Select * from TableName Where Keyword LIKE '%" + TxtSearchBox.Text + "%'";
StrQuery = StrQuery.Replace("'", "\'");
StrQuery = StrQuery.Replace('"', "\"");
StrQuery = StrQuery.Replace("\", "\\");
另一件非常重要的事情是,最好使用参数化查询。这些查询将自动处理单引号,并更好地防止SQL注入
将遵循ISO关于引号分隔标识符和文字字符串的规则。由双引号分隔的标识符可以是Transact-SQL保留关键字,也可以包含Transact-SQL语法规则通常不允许的标识符字符。使用转义字符处理
\'
斜杠单引号或'
双单引号或\'
我认为参数化SQL或使用实体框架和存储过程可以克服这个问题。