2010-10-21 40 views
3

我试图对我的实体运行无跟踪查询,以便我可以在上下文之外更新它们。但是,如果没有跟踪不起作用,并且出现异常,说明实体框架NoTracking无法正常工作

“ObjectContext实例已被处置,并且不能再用于需要连接的操作。”

这个异常是由一个属性抛出的,这个属性在数据库模型方面是一个单独表的外键,我是否需要以某种方式为这个单独的实体设置不跟踪?

我的代码是:

List<EmailQueue> result = null; 
      using (Entities context = new Entities()) 
      { 

       var emailQueueQuery = context.EmailQueues; 
       emailQueueQuery.MergeOption = System.Data.Objects.MergeOption.NoTracking; 
       result = emailQueueQuery.Execute(System.Data.Objects.MergeOption.NoTracking).ToList<EmailQueue>(); 

      } 
      return result; 

回答

4

我的胡乱猜测是,你懒加载打开?

如果您处置ObjectContext,则延迟加载无法工作。