问题描述
我正在尝试使用tsquery for postrgresql添加参数化查询。
原始postgresql如下:
and search @@ 'john' ::tsquery;
每当我尝试将其添加到查询中时:
query.And("search @@ 'john' ::tsquery");
抛出错误,它可能是不安全的片段。
如何允许它通过验证?
解决方法
使用C#string.Format语法在SQL Fragment查询中为db参数建立索引,例如:
query.And("search @@ {0}::tsquery;",request.SearchTerm);
您可以使用UnsafeAnd
绕过SQL片段验证