我正在使用 Entity Framework 。我有一个表 Person,它在表 PersonCategory 上有一个外键。 Person Id 是一个自动递增的身份 (1,1)。每次我更新个人实体时, Entity Framework 都会为 PersonCategory 表插入一行,即使找到了类别也是如此。
我正在使用数据库优先设计。
class Person
{
public string Name {get;set}
public PersonCategory {get;set;}
}
class PersonCategory
{
public int ID {get;set}
public string Name{get;set;}
}
最佳答案
首先,您需要将现有的 PersonCategory
附加到上下文;
var myPersonCat = new PersonCategory { ID = 1, Name = "Foo" };
var myPerson = new Person { Name = "Bar", PersonCategory = myPersonCat };
context.PersonCategories.Attach(myPersonCat);
context.People.Add(myPerson);
关于c# - 即使找到键, Entity Framework 也会为导航属性插入行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12157537/