Связанная с Entity Framework ICollection материализуется в HashSet

Я использую EntityFramework POCO + прокси + отложенная загрузка в моем проекте. Сегодня я был довольно удивлен, увидев, что class Транзакция имеет связанную коллекцию Строк , материализованных в HashSet (вместо EntityCollection ). Мне нужно EntityCollection для отслеживания изменений в коллекции.

public class Transaction
{
    public virtual ICollection<TransactionRow> Rows { get; set; }
}

Однако другие классы сущностей имеют свою связанную коллекцию, материализованную в EntityCollection .

Я загружаю транзакцию - ObjectQuery , поэтому оно должно быть в контексте. Прокси для объекта также создан.

Может кто-нибудь сказать - как Entity Framework решает, что использовать - HashSet или EntityCollection? Почему некоторые вещи становятся HashSets?

6
задан Ladislav Mrnka 2 September 2010 в 20:58
поделиться