在尝试执行使用PredicateBuilder动态构建的查询时,我遇到了一个问题。
我能够构建查询,但是当执行查询本身时,我得到以下“TypeLoadException”.
运行时的: return context.SearchRecords.AsExpandable().Where(predicate).ToList();
'System.Data.Entity.Infrastructure.IDbAsyncEnumerable`1‘无法从程序集'EntityFramework、Version=6.0.0.0、Culture=neutral、EntityFramework加载类型
我已经用这个做了很长一段时间了,我已经检查了网上的例子等等,我似乎做的一切都是正确的,所以我希望这是可行的。
private IEnumerable<SearchDto> BuildAndExecuteQuery(string queryString)
{
var queryWords = this.GetQueryWordsFromQueryString(queryString);
using (var context = new AlleyOopSearchContext())
{
var predicate = PredicateBuilder.False<SearchDto>();
foreach (var word in queryWords)
{
var temp = word;
predicate = predicate.Or(p => p.ShotDescription.Contains(temp));
}
return context.SearchRecords.AsExpandable().Where(predicate).ToList();
}
}项目使用.NET Framework4.5构建,使用实体框架6构建。
提前感谢!
发布于 2014-09-08 13:29:50
经过更多的调查后,我为自己找到了答案,结果发现解决方案中的另一个项目是引用新版本的实体框架。
将所有项目升级到同一个版本解决了这个问题。
https://stackoverflow.com/questions/25723533
复制相似问题