0

EF 5.0コードファーストを使用して、ナビゲーションプロパティの代わりに外部キーのリストをマップすることは可能ですか?

CarエンティティとDriverエンティティがあると想像してください。ドライバーは複数の車を運転でき、車は複数のドライバーを持つことができます。これは、CarテーブルとDriverテーブルの間の関係の結合テーブルを使用してデータベースでモデル化されます。Car_drivers (car_id, driver_id)

これを次の2つのクラスにマッピングできるようにしたいと思います。

public class Driver
{
    public int Id { get; set; }
    ...
    public IList<int> Drives  { get; set; } // List of car ID's
}

public class Car
{
    public int Id { get; set; }
    ...
    public IList<int> DrivenBy { get; set; } // List of driver ID's
}

EF 5.0コードファーストを使用して、データベースモデルの外部キーをこのモデルにマッピングするにはどうすればよいですか?

更新しました:

NHibernateでサポートされているかどうか誰かが知っていますか?

4

1 に答える 1

0

それは不可能。Entity Framework は、関連するエンティティのコレクションのみをマップできます。したがって、キーのコレクションではなく、エンティティのコレクションを使用する必要があります。

public class Driver
{
    public int Id { get; set; }
    ...
    public virtual ICollection<Car> Drives  { get; set; }
}

public class Car
{
    public int Id { get; set; }
    ...
    public virtual ICollection<Driver> DrivenBy { get; set; }
}
于 2013-03-19T22:10:52.513 に答える