【问题标题】:EF4: AutoDetectChangesEnabled not foundEF4:未找到 AutoDetectChangesEnabled
【发布时间】:2013-12-28 00:46:41
【问题描述】:

我的情况很奇怪。我阅读了context.Configuration.AutoDetectChangesEnabled = false; 并决定使用它。 但我找不到它。代码是

using (DefaultCS db = new DefaultCS())
        {
            db.Configuration.AutoDetectChangesEnabled = false;
            order.OrderTables = TableNo;
            order.OrderMenus = oMenu;
            db.Orders.AddObject(order);
            db.SaveChanges();
        }

我在db.Configuration 遇到错误,即ROS.DefaultCS does not contain a definition for 'Configuration' and no extension method 'Configuration' accepting a first argument of type 'ROS.DefaultCS' could be found (are you missing a using directive or an assembly reference?)

我错过了什么? 我正在使用 EF4。

【问题讨论】:

    标签: asp.net entity-framework entity-framework-4


    【解决方案1】:

    答案是:在 Entity Framework 4 中,我们应该使用 db.Orders.MergeOption = MergeOption.NoTracking; 而不是 db.Configuration.AutoDetectChangesEnabled = false;,这仅适用于 Entity Framework 5。

    EF4 和 EF5 的代码

    在 EF4 中

    db.Orders.MergeOption = MergeOption.NoTracking;
    

    在 EF5 中

    db.Configuration.AutoDetectChangesEnabled = false;
    

    EF4的降级是为每个Entity设置。

    【讨论】:

    • 如果有人知道优化 L2E 查询的更好选择,请分享。
    猜你喜欢
    • 1970-01-01
    • 2023-04-09
    • 2013-05-27
    • 1970-01-01
    • 1970-01-01
    • 2012-03-03
    • 2011-01-15
    • 1970-01-01
    • 2020-09-24
    相关资源
    最近更新 更多