我试图对我的实体运行不跟踪查询,以便可以在上下文外部进行更新。但是,当no跟踪不起作用并且出现异常时,

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

这个异常是由一个属性抛出的,就数据库模型而言,该属性是单独表的外键,我是否还需要以某种方式为此单独的实体设置notracking?

我的代码是:

    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;

最佳答案

我的疯狂猜测是您打开了延迟加载功能?

如果处置ObjectContext,则延迟加载将无法进行。

关于asp.net - Entity Framework NoTracking不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3989053/

10-10 07:19