コードファーストモデルで次の列挙型を使用しました
public enum Role
{
Reviewer = 1,
Requester = 2,
Approver = 3
}
以下のようにユーザーエンティティで使用されます
public class User
{
public int Id { get; set; }
public string Name { get; set; }
public string Email { get; set; }
public Role Role { get; set; }
}
EFは、データベースに単一のテーブルUsersを作成し、ロールはintとしてそこに格納されます。ここで必要なのは、IdとDescを持つ「Roles」という名前の別のテーブルです。Idは列挙型の値であり、Descはその名前です。また、このテーブルはモデルの作成時に自動的に入力されます。
EFにはいくつかの機能がありますか?または、ロール用に別のエンティティを作成して手動で入力する必要がありますか?