抽象クラスUserProfile
があり、サブクラスTenant
があるため、関係は 1:1 です。つまり、1 つの「ユーザー」が 1 つの「テナント」です。
これは、型ごとのテーブルの継承を 1:1 ベースで実装する正しい方法ですか?
[Table("UserProfile")]
public abstract class UserProfile
{
[Key]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
public int UserId { get; set; }
// ...
}
[Table("Tenant")]
public class Tenant : UserProfile
{
public string PersonalDescription { get; set; }
// ...
// Navigation property on dependant end
public virtual UserProfile UserProfile { get; set; }
}
関係の依存側にナビゲーション プロパティを配置するのは正しいですか? それとも、それがどのような終わりを迎えるかが重要ですか?
Tenant
タイプの ナビゲーション プロパティも配置する必要がありUserProfile
ますか?virtual
最後に、モデル内のすべてのプロパティを作成して、 EF の変更追跡を支援する価値があることを読みました。これは必要ですか?