【问题标题】:Why does DbContext FirstOrDefault ignore entities that have been added?为什么 DbContext FirstOrDefault 会忽略已添加的实体?
【发布时间】:2012-12-23 05:19:57
【问题描述】:

我想在实体集中搜索我添加到其中的对象 - 但它找不到对象

当我使用相同的实体类型名称多次调用此过程时,它总是添加一个新对象。为什么?

private EntityRegister  GetEntityRegister(string entityTypeName)
    {
        var er = Db.EntityRegisters.FirstOrDefault(e => e.Name == entityTypeName);
        if (er == null)
        {
            er = new EntityRegister()

            {
                Name = entityTypeName 

            };
            Db.EntityRegisters.Add(er);


        }
        return er;
    }

【问题讨论】:

  • 您是否保存了更改?如果您没有保存更改,则 FirstOrDefault 会进入数据库,新添加的实体不在数据库中,因此 FirstOrDefault 返回 null。
  • 谢谢帕维尔 - 这就是答案

标签: entity-framework-5


【解决方案1】:

您是否保存了更改?如果您没有保存更改,则 FirstOrDefault 会转到数据库,新添加的实体不在数据库中,因此 FirstOrDefault 返回 null。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多