日期:2014-05-17  浏览次数:20945 次

关于添加数据返回当前ID
我用Linq to EF。当entities.SaveChanges()后,怎么样返回该行其自动增长的id值。我在用entities.xxmodel.last().Id获取,但感觉有点悬啊。

------解决方案--------------------
好像Insert的时候 Entity class实例的ID field设置成-1. SaveChanges后,Entity class实例,就是自动生成的Id了。
------解决方案--------------------
实体类的ID应该在SaveChanges后设置,
------解决方案--------------------
savechanges()后直接通过 xxx.ID 即是自增后生成的主键ID
------解决方案--------------------
xxx 是你new出来新增的实体对象
------解决方案--------------------
private Entity.UnitItem BuildNewItem(Entity.UnitGroup group, string name,decimal cov)
        {
            Entity.UnitItem m = new Entity.UnitItem();
            m.Conversions = cov;
            m.CreateBy = "admin";
            m.CreateOn = DateTime.Now;
            m.Description = string.Empty;
            m.IsDeleted = false;
            m.IsEnabled = true;
            m.ItemName = name;
            m.Sortfactor = RDMP.Infrastructure.PrimaryKeyGenerator.GetPrimaryKey();
            group.UnitItems.Add(m);
            return m;
        }
记得给分呀,(*^__^*) 嘻嘻……,返回实体,想要啥有啥