私は Entity Framework が初めてで、おそらく簡単な質問があります。
明確にするために、構造を最大限に単純化しました(そうであることを願っています)。
名前だけの単純な「エンタープライズ」クラスを作成するだけでよいと想像してください。次に、ワーカーの名前だけを持つ「Worker」という名前の別のクラス。ワーカーはエンタープライズに属している必要があります。エンタープライズにはマネージャー (ワーカー) が必要です。
したがって、これらの単純なクラスをどのように想像するかを次に示します。
public class Worker
{
public int WorkerId { get; set; }
public String Name { get; set; }
public int EnterpriseId { get; set; } // ForeignKey for Enterprise
public Enterprise Enterprise { get; set; }
}
public class Enterprise
{
public int EnterpriseId { get; set; }
public String Name { get; set; }
public Worker Manager { get; set; }
public List<Worker> Workers { get; set; }
}
これらのクラスが次の DB 構造になるようにしたいと思います。
Table Worker
WorkerId (PK, int, not null)
Name (varchar(128), not null)
EnterpriseId (FK, int)
Table Enterprise
EnterpriseId (PK, int, not null)
Name (varchar(128), not null)
Manager (FK, int)
modelBuilder でいろいろ試してみましたが、どうしても欲しいものが得られません。私がやりたいことを行うための Fluent API を使用したソリューションはありますか?
ご助力ありがとうございます。