添加新的对象实体框架。一对多

添加新的对象实体框架。一对多

问题描述:

我有Users和Persons表。一个用户有很多人。当我将新人添加到已存在的用户时,是否必须检索用户对象并向其中添加新人或者是否足以指定用户对象的用户ID?添加新的对象实体框架。一对多

public void InsertUpdatePerson(int? personId, string firstName, string lastName, 
      string middleName, DateTime dob, string mobile, string email, int userid) 
     { 
      using (DBEntities context = new DBEntities()) 
      { 
       Person pers; 
       if (personId.HasValue) 
       { 
        pers = context.People.Where(p => p.PersonID == personId).FirstOrDefault(); 
        pers.FirstName = firstName; 
        pers.LastName = lastName; 
        pers.MiddleName = middleName; 
        pers.DOB = dob; 
        pers.Mobile = mobile; 
        pers.Email = email; 
        pers.UserID = userid; 
       } 
      } 
     } 
+0

在这种情况下,我通常会检索用户,然后添加Person和saveChanges,但我不确定您必须在简约意义上做什么。你有没有试过你建议的?它是否抛出异常? – 2012-07-15 12:39:31

+2

如果你运行你的代码,那应该回答你的问题。 – 2012-07-15 12:40:01

我首先使用EF 4.3.1代码,事实并非如此。您可以简单地设置外键而不需要检索。