我有一张名为farmers
的表格。每个农民都有一个强制性的国家。
当我使用antity框架将新农民添加到数据库时,我在country table上遇到了违规行为。看起来实体框架想要将国家/地区添加到国家/地区表中,但我只想在我的农民表中使用guid:
违反PRIMARY KEY约束'PK_Country'。无法插入 对象'dbo.Country'中的重复键。声明一直如此 终止。
有人可以告诉我我做错了什么吗?这里是插入代码:
newFarmer.Guid = Guid.NewGuid();
ents.Farmer.AddObject(newFarmer);
ents.SaveChanges();
return newFarmer;
我甚至检查了这个国家的状态,并且没有改变。
答案 0 :(得分:1)
一种可能的解决方案是实体框架不理解您的实体主键也是标识,应该自动递增。我在使用EF 4.1 with database first的应用程序中遇到了同样的问题。要解决这个问题,我不得不::
然后,我的EF4.1能够插入和更新我的实体。
希望这有帮助!