域名模型:
public class Media : Entity
{
public string Name { get; set; }
[NotMapped]
public int LevenshteinScore { get; set; }
}
服务:
public ICollection<T> GetSearchedMedias(string searchString)
{
var searchables = _repository.GetAll();
foreach (var searchable in searchables)
{
var score = Levenshtein.iLD(searchable.Name, searchString);
searchable.LevenshteinScore = score;
}
return searchables.Where(x => x.LevenshteinScore <= 30).ToList();
}
我收到错误:
LINQ to Entities不支持指定的类型成员'LevenshteinScore'。
显然这是因为它具有NotMapped属性。
调用ToList()
会起作用,但也会将不必要的数据加载到我不需要的内存中。
searchables.ToList().Where(x => x.LevenshteinScore <= 30).ToList();
我可以在查询中使用非映射属性来执行数据库吗?