我正在使用一个小模型,并且正在为一个简单的问题而苦苦挣扎。
我应该如何存储地址/邮件/电话列表并选择一个作为委托人?
我现在想的例子。
地址实体:
- ID
- 布拉布拉领域
个人实体:
- ID
- Bla bla bla 名字和生日等...
- 地址列表(多对多到地址,因为一个地址可以在家庭成员中共享)
- 主要地址(FK - 地址)
这是我在 EF Core 中创建的实体:
public class Person
{
public Person()
{
Addresses = new HashSet<Address>();
PhoneNumbers = new HashSet<PhoneNumber>();
Emails = new HashSet<Email>();
}
[StringLength(100)]
public string Firstname { get; set; } = null!;
[StringLength(300)]
public string Lastname { get; set; } = null!;
public Gender Gender { get; set; }
public DateTime BirthDate { get; set; }
public Guid? MainAddressId { get; set; }
public Address MainAddress { get; set; } = null!;
public virtual ICollection<Address> Addresses { get; internal set; }
}
但这对我来说看起来很脏。