我有一张Property桌子,另一张Detail桌子.我使用断开连接的方法,其中添加了多个属性,然后当我们单击保存按钮时,它将保存对数据库的更改.这种不为每个添加的属性保存的方法是因为用户也可以从列表中删除.
这就是我在做什么
foreach (Property P in Results)
{
if(P.PropertyId==0 && P.EntityState==EntityState.Added)
Repository.Properties.AddObject(P);
}
Run Code Online (Sandbox Code Playgroud)
但是当我尝试保存数据时
public void Save()
{
Repository.SaveChanges();
}
Run Code Online (Sandbox Code Playgroud)
它返回错误
无法确定'database.FK_Details_Property'
关系的主要结尾.多个添加的实体可以具有相同的主键.
我认为它是因为每次我调用AddObject时它的主键是0,我不知道什么可以解决这个问题.对于遇到它的人来说,这是否相似或听起来很熟悉?
提前致谢