数据库中的“类别”表定义如下:

CategoryID - PK ,identity specification ON  (only this column has identity)
Description
Title

我想插入新数据:
Category cat = new Category
{
    Description = "xxx",
    Title = "yyy",
};
if (cat.EntityState == EntityState.Detached)
{
   Articlerctx.AddToCategories(cat);
}
return Articlerctx.SaveChanges();

我得到错误:



但我没有插入 CategoryID!我希望它接收自动值!

最佳答案

你的场景在我的情况下工作得很好 - 使用 EF4。

检查以下事项:

  • 自从您第一次创建实体模型以来,您是否更改了数据库模型,如果是这样,您是否真的更新了实体模型?
  • 在那个时间点你的 cat.EntityState 真的是 detached 吗??在我的情况下,当使用带有 ObjectContext 的 EF4 时,它是 Added 。在这种情况下,您不会将新的 Cat 对象添加到类别集合中..
  • 关于c# - Entity Framework IDENTITY_INSERT,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4669084/

    10-12 17:19