如:
SELECT * FROM BookDetail WHERE CONTAINS(Content,'"关键字1" OR "关键字2" OR "关键字3"')
前台传入时是一个TextBox,输入 “关键字1 关键字2 关键字3 关键字4...”,前台输入可以随意,如果拼SQL才能形成上面的查询,那么就存在SQL注入的风险,如何参数化或避免这种风险?
我的要求是特殊字符也是要能查出来的,比如支持单引号的查询,“OR” “SELECT”的查询,因为内容中确实存"OR SELECT"在这样的数据。
现在使用的是EF,但没有找到支持全文搜索的办法。但如果使用SQL查询,又存在SQL注入的风险。
EF 本身就可以防止注入了
关键是EF好像不支持全文索引检索