Когда объект Entity Framework избавляется от своих данных? - PullRequest
1 голос
/ 12 августа 2011

Скажите, что у меня есть следующий код:

using (var db = new MyDatabaseContext())
{
    foreach (var entity in db.LargeEntities)
    {
        byte[] data = entity.LargeBlob;
        File.WriteAllBytes("c:\\" + entity.FileName);
    }
}  

Когда будут готовы данные для каждой сущности. BigBlob будет готов для сбора мусора? Во время цикла? После использования заявления? Я закончил с объектами после строки WriteAllBytes, поэтому я бы хотел, чтобы он был удален как можно скорее.

1 Ответ

1 голос
/ 12 августа 2011

Готов к gc после блока Using. Поскольку EF хранит локальную копию загруженных элементов, вы должны утилизировать Context, чтобы освободить кэшированные элементы.

...