仅使用ForeingKey Id更新EF中的一对多关系

时间:2018-04-07 03:14:03

标签: c# postgresql entity-framework-6

我有一个由以下内容组成的数据库关系:

public class Study {
    public int StudyId { get; set; }

    public int? PatientId { get; set; }
    public virtual Patient Patient { get; set; }
}

public class Patient
{
    public int PatientId { get; set; }

    public virtual ICollection<Study> Hospitals { get; set; }
}

让我们说我想用新病人更新一项研究,但该病人在数据库内。

我尝试做的是查询该患者的身份证明(让我们说出3)并将study.PatientId设置为3和{{1} } study.Patient

在该项研究中运行null,将在ForeignKey中从AddOrUpdate返回Study而不是Patient而不是null

这是否意味着如果我想使用3更新Study,那么我需要从数据库查询整个Patient对象,而不是只查询它{&#39}。是否然后将Patient设置为study.PatientId3到查询的study.Patient对象?

如果是这样,是否有其他方法只能使用Patient来代替查询的整个对象?

0 个答案:

没有答案