以下のOrder
オブジェクトを Entity Framework エンティティと見なします。
Order
downのインスタンスを にキャストし、 のプロパティにIOrder
アクセスすると、仮想プロパティがデータベースからすべてのエンティティを列挙してロードし、メモリ内の OrderLine エンティティのデータが格納されたコレクションを返すことになりますか?Lines
IOrder
OrderLines
OrderLine
それとも、クライアント コードは OrderLines コレクションへの参照を取得するだけで、foreach などで実際に列挙されると、データベースからエンティティが読み込まれますか?
public interface IOrder
{
IEnumerable<OrderLine> Lines { get; }
}
public class Order : IOrder
{
public int OrderId { get; set; }
public IEnumerable<OrderLine> Lines
{
get
{
return OrderLines;
}
}
public virtual ICollection<OrderLine> OrderLines { get; set; }
public Order()
{
OrderLines = new List<OrderLine>();
}
}