WinForms プロジェクト、.net 4.5 で EntityFramework バージョン 5.0 を使用しています。
重要なエンティティを 2 つ作成しました
public class Role
{
[Key]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
public string Name { get; set; }
public bool StockPermission { get; set; }
public bool ItemPermission { get; set; }
public bool OrderPermission { get; set; }
public bool PersonPermission { get; set; }
public bool StatisticPermission { get; set; }
}
public class Person
{
[Key]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
public String Name { get; set; }
public String Nickname { get; set; }
public String Contact { get; set; }
public System.DateTime Created { get; set; }
public String Pincode { get; set; }
public virtual ICollection<Role> Role { get; set; }
public virtual Person Creator { get; set; }
}
および dbContext クラス:
public class SusibarDbContext : DbContext
{
public DbSet<Entity.Role> Roles { get; set; }
public DbSet<Entity.Person> Persons { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
//base.OnModelCreating(modelBuilder);
}
}
OnModelCreating(DbModelBuilder modelBuilder)
Person と Role の関係を定義するために関数に追加する必要があるものを教えてください。
Person は多くの Role(s) を持つことができます (ただし、null にすることはできません)。異なる Person が同じ Role(s) を持つことができます。
Person は 1 つの "creator" Person を持つことができます (null の場合もあります)。異なる Person は同じ "creator" を持つことができます
あなたがとても親切にできるなら、私に解決策を教えてください:-(