因此,在执行linq查询时,应用程序(WPF,MVVM)会抛出异常。此查询在两个不同的视图中执行,但字符与字符完全相同。只有一个视图抛出异常。
LINQ to Entities无法识别方法' System.Data.Entity.DbSet`1 [DQSA.Entities.DrugScan] SetDrugScan'方法,并且此方法无法转换为商店表达式。
查询如下:
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Input;
using System.Linq.Dynamic;
using System.Linq.Expressions;
//....
var contents = (from i in ctx.Set<Entities.ToteContents>()
where i.ToteID == ToteID
group i by i.Drug into g
select new
{
Drug = g.Key,
QtyShipped = g.Sum(x => x.Qty),
QtyScanned = (ctx.Set<Entities.DrugScan>()
.Where(x => x.ToteID == ToteID && x.DrugID == g.Key.DrugID)
.Count())
}).ToList();
工作视图使用此数据呈现PDF报告没有问题。它与非工作视图位于同一项目中,#includes
也是相同的。所以我无法解释这个问题.`