我在设置数据库所需的正确关系时遇到了一些问题。
用文字...我想拥有一个可以多个(零:多个)分支机构的公司
在公司上,我希望能够指定将存在的HeadOffice将存在于Branch表中(零:一)
我希望看到的是具有以下字段的公司表:Id、Name、HeadOfficeId 以及我希望看到的分支:Id、TradingAs、Name、Firm_Id
相反,我看到:
公司表具有以下字段:Id、Name、HeadOfficeId
我希望看到的分支:Id、TradingAs、Name、Firm_Id、Firm_Id1
模型类如图所示
public class Firm
{
public int Id { get; set; }
public string Name { get; set; }
public virtual ICollection<Branch> FirmBranches { get; set; }
public virtual LawFirmBranch HeadOffice { get; set; }
}
public class Branch
{
public int Id { get; set; }
public string TradingAs {get;set;}
public string Name {get;set;}
public Firm Firm { get; set; }
}
我知道这会导致循环引用类型问题,我很高兴将 Firm HeadOffice 最初设置为 Null,直到 FirmBranches 属性中有值。
有什么方法可以指定 HeadOffice 具有 null 或一种类型的关系