Entity Framework Code First を使用しています。作成しようとしているクラスには、(同じタイプの) 2 つのコレクションが含まれています。それぞれのコレクションの復元に問題があります。
私のクラスは次のようになります。
public class Destination
{
public int DestinationId { get; set; }
public string Name { get; set; }
public List<Lodging> Lodgings { get; set; }
public List<Lodging> Lodgings2 { get; set; }
}
public class Lodging
{
public int LodgingId { get; set; }
public string Name { get; set; }
public Destination Destination { get; set; }
}
新しい宛先を作成してから、データベース接続を再度開きました (閉じて開きました)。目的地を取得すると、コレクション (dest.Lodgings と dest.Lodgings2) が null になります。それぞれのコレクションを復元するにはどうすればよいですか? クラスに特定のタイプのコレクションが 1 つしかない場合は、次のようにすることができます。
var lodgings = context.Lodgings.Where(l => l.Destination.DestinationId == destId).ToList();
リレーションシップがデータベース スキーマ (Destination_DestinationId1 および Destination_DestinationId2) で維持されていることがわかりますが、それらにアクセスできないようです。任意の提案をいただければ幸いです。