プロジェクトで EntityFramework POCO + プロキシ + 遅延読み込みを使用しています。Transaction
今日、クラスの関連コレクションが(の代わりに) にRows
具体化されているのを見て、かなり驚きました。コレクションの変更を追跡する必要があります。HashSet
EntityCollection
EntityCollection
public class Transaction
{
public virtual ICollection<TransactionRow> Rows { get; set; }
}
ただし、他のエンティティ クラスでは、関連するコレクションが に具体化されていEntityCollection
ます。
Transaction
through を読み込んObjectQuery
でいるので、コンテキスト内にあるはずです。オブジェクトのプロキシも作成されます。
Entity Framework は、HashSet と EntityCollection のどちらを使用するかをどのように決定するのでしょうか。HashSet になるのはなぜですか?