谢谢你的期待。我有以下退货声明:
//Return the result set
return new FilterDto.FilterResult<Application>
{
Count = count,
Results = _results.ToList().AsParallel().Select(s => ConstructApplication(s))
};
调用以下方法:
public Application ConstructApplication(Application application)
{
var result = new Application
{
Id = application.Id,
Title = application.Title,
Icon = application.Icon
. . .
};
return result;
}
AsParallel()
调用正在使基础提供商无法打开&#34;错误;当AsParallel()
与实体框架一起使用时,该问题已得到充分记录。
因为我在ToList()
之前调用了AsEnumerable()
,所以我的集合不应该是线程安全的,因为它现在是内存中的集合吗?
答案 0 :(得分:0)
问题是我调用的构造函数中的一些属性是延迟加载的,所以我需要在调用AsParallel()
之前急切加载它们,并使用构造函数,例如.Include(i => i.Image)
。
有趣的是,即使不使用AsParallel()
,我也可以通过热切加载相关实体来加快查询速度。