http://www.entityframework.info/Home/FullTextSearch
此示例适用于完整单词搜索,但不讨论如何实现通配符后缀。
例如,我可以在SQL中执行以下操作并获得" bill"或者"比利"使用' *'到底。如何将其添加到我的拦截器?
select * from dbo.messagethread a
where contains(Text, '"bil*"')
如果你看一下上面那个链接中的示例代码,我想是否有可能这样的事情(如下),但显然这不起作用,因为它被添加到参数名称而不是值。
string.Format(@"contains([$1].[$2], @{0} *)", parameter.ParameterName));
有些问题like this one在SQL中以全文的形式讨论通配符。
答案 0 :(得分:1)
在问题中提供的示例链接中查找此行。
parameter.Value = value;
然后,要做前缀匹配,只需在下面添加此行。
value = $"\"{value}*\""; // prefix match
我们基本上改变参数的值,使其中的*在双引号内。 现在,如果您搜索" bil",您将获得结果" bill" /" billy"等等。