我正在使用Entity Framework Code First。
我有一个名为Notes的实体
我还有其他实体,例如 商业合作伙伴 机会 工作订单
所有这些实体都可能有笔记。
对此进行建模的最佳方式是什么
注释表中的1。)具有业务伙伴,业务机会和工作人员的可选外键。然后只需设置与音符相关的可选键
2。)有中间表,例如BusinessPartnerNotes,有两个字段BusinessPartnerId和NoteId
应该提到的是,注释永远不会同时与两个实体相关。
任何帮助或建议都将不胜感激。
答案 0 :(得分:1)
鉴于您对基数的描述,并假设Notes for BusinessPartners具有相同格式的Notes for Opportunities,我采用最简单的方法(列表中的选项1.)。
class Note
{
public int Id { get; set; }
public string Content { get; set; }
}
class BusinessPartner
{
public int Id { get; set; }
public string Name { get; set; }
public virtual ICollection<Note> Notes { get; set; }
}
class Opportunity
{
public int Id { get; set; }
public string Name { get; set; }
public virtual ICollection<Note> Notes { get; set; }
}
哪个应生成以下表格:
Notes
Id
Content
BusinessPartner_Id
Opportunity_Id
BusinessPartners
Id
Name
Opportunities
Id
Name