PredicateBuilder を使用して動的に作成したクエリを実行しようとすると、問題が発生します。
クエリを作成することはできますが、クエリ自体を実行すると、次の「TypeLoadException」が発生します...
実行時: return context.SearchRecords.AsExpandable().Where(predicate).ToList();
アセンブリ 'EntityFramework、バージョン = 6.0.0.0、カルチャ = ニュートラル、PublicKeyToken = b77a5c561934e089' から型 'System.Data.Entity.Infrastructure.IDbAsyncEnumerable`1' を読み込めませんでした。
私はこれでかなり長い間髪を伸ばしてきました。オンラインの例などを確認しましたが、すべてを正しく行っているように見えるので、これが機能することを期待しています.
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 Framework 4.5 を使用して構築され、Entity Framework 6 を使用します。
前もって感謝します!