わからない EF Core のナビゲーション プロパティに関する質問があります。テーブルと関連テーブルがある場合:
Person
=========
PersonId
Name
Surname
RoleId
Role
=========
RoleId
RoleName
今、C# でモデルを実装します。
public class Person
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int PersonId {get; set;}
public string Name {get; set;}
public string Surname {get; set;}
public int? RoleId { get; set; }
public virtual Role Role { get; set;}
}
public class Role
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int RoleId { get; set; }
public string RoleName { get; set; }
}
それは正しい実装ですか?具体的には、抜けたらどうなるか知りたい
public int? RoleId { get; set; }
Personテーブルから?それは違いを生むでしょうか?また、Role クラスに以下を追加すると、どのような違いがありますか。
public virtual List<Person> Persons {get; set;}
それは物事をどのように変えますか?
ありがとうございました