【问题标题】:Model Tracking In Entity Framework实体框架中的模型跟踪
【发布时间】:2013-05-01 16:02:36
【问题描述】:

我们在项目中使用了 Microsoft WCF Web 服务和实体框架 ORM。

当客户端调用每个 Web 服务时,实体框架将每个模型的状态保存在内存中,以便跟踪每个客户端的模型状态。在这种情况下,服务器的内存使用会大大增加。我们不需要在客户端跟踪模型,所以我们在客户端将 MergeOption 设置为 NoTraking,但它似乎不起作用。

有没有办法解决这个问题?

【问题讨论】:

    标签: c# .net wcf entity-framework odata


    【解决方案1】:

    您可以使用.AsNoTracking() 方法 - 这意味着实体框架不会尝试跟踪对实体的任何更改。示例:

    var items = context.Foo.AsNoTracking();
    

    推荐阅读:

    Entity Framework and AsNoTracking

    【讨论】:

    • 如果我使用此代码,则无法在 Entity Framework 中更新或删除我的模型。
    • @MortezaNemati:是的,如果您不需要跟踪对实体所做的更改,则应该使用此代码 - 例如您正在加载要在网格中显示的实体。
    猜你喜欢
    • 2011-10-23
    • 2017-06-30
    • 1970-01-01
    • 2011-04-23
    • 1970-01-01
    • 1970-01-01
    • 2020-06-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多