Tenant
抽象型のクラスがありUserProfile
ます。タイプごとのテーブル継承アプローチを使用しています。テナントは、テナントのグループを表すことができます。ATenantGroupMember
はそのようなグループの1つです。したがって、1Tenant
は0個または多数TenantGroupMember
のsを持つことができます。
この関連付けは、タイプごとのテーブルアプローチを使用してどのように表されますか?彼らは私がそれに近づいた方法は次のとおりです:
[Table("TenantGroupMember")]
public class TenantGroupMember
{
[Key]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
public int TenantGroupMemberId { get; set; }
// 1:many with Tenant - base UserProfile
public int UserProfileId { get; set; }
}
[Table("Tenant")]
public class Tenant : UserProfile
{
public string TenantAge { get; set; }
public string PersonalDescription { get; set; }
// 1:many with TenantGroupMember
public virtual ICollection<TenantGroupMember> TenantGroupMembers { get; set; }
}
TenantGroupMember
からFKを作るのは正しいUserProfile
ですか?にあるため、EFは、aはにのみICollection TenantGroupMembers
関連付けることができ、他の派生クラスには関連付けられないことを認識しますか?Tenant
TenantGroupMember
Tenant
UserProfile