我有一个包含对EF.Functions.Contains
的调用的方法。现在我想使用InMemory数据库为这个方法编写单元测试,但我立即收到以下异常:System.InvalidOperationException : 由于查询已切换到客户端评估,因此不支持'Contains'方法。
我的方法看起来像这样
var attributeValues = Context.AssetAttributeValues
.Include(a => a.AssetAttribute)
.Include(a => a.Asset)
.Where(i => EF.Functions.Contains(i.Value, searchString));
我知道这个异常是由于我的InMemory数据库与生产SQL Server实例上缺少全文索引,但我如何在InMemory数据库上获得相同的索引?
是否有任何方法可以避免这个异常?
.Where(i => i.Value.Contains(searchString));
- TanvirArjelLIKE '%searchstring%'
操作,这绝对不快... - M.G