“System.InvalidOperationException”类型的异常发生在EntityFramework.dll中,但未在用户代码中处理 附加信息:在创建模型时不能使用上下文。如果上下文在OnModelCreating方法中使用,或者同一个上下文实例由多个线程并发访问,则可能引发此异常。注意,DbContext和相关类的实例成员不能保证线程安全。
IQueryable<VMPARForms> TempfilteredMember = filteredMember;
IQueryable<clsPARForms> parformslist = dbcontext.PARForms;
Parallel.ForEach(TempfilteredMember.Where(c => c.PARStatus == 21), item =>
{
var list = parformslist.Where(x => x.CaseNumber == item.CaseNumber && x.PARID != item.PARID).FirstOrDefault();
if (list != null)
{
item.PARStatus = list.PARStatus;
}
});发布于 2018-02-14 06:10:52
我认为问题在于您正在尝试创建EF上下文的多个对象。文件上说
ObjectContext类不是线程安全的。在多线程场景中,无法确保ObjectContext中数据对象的完整性。ObjectContext类不是线程安全的。 上下文不是线程安全的。只要同一实体类的实例不被多个上下文同时跟踪,仍然可以创建多线程应用程序。EF多线程
根据应用程序的不同,您可以使用ToList()实现数据,并根据需要对其进行筛选,或者尝试更改查询的逻辑。
https://stackoverflow.com/questions/48780191
复制相似问题