Что за шумиха над наборами объектов в Entity Framework 4? - PullRequest
2 голосов
/ 11 мая 2010

Я являюсь промежуточным пользователем EF в .net 3.5 и недавно перешел на работу с .net 4.

Одна вещь, с которой я постоянно сталкиваюсь при чтении различных руководств, - это использование ObjectSets вместо ObjectQuerys и то, что они представляют собой замечательную новую функцию.

Что в них такого хорошего?

Пожалуйста, просветите меня.

С уважением, Кохан

1 Ответ

4 голосов
/ 11 мая 2010

Не уверен, что это то, что вы имеете в виду в своем вопросе, но что действительно здорово в ObjectSet, так это то, что он реализует интерфейс IObjectSet , что означает, что вы можете очень легко его подделать и протестировать код вниз до уровня доступа к данным.

Что еще круче, так это то, что поскольку ObjectSet использует универсальные типы ( IObjectSet ), вы можете иметь универсальный репозиторий и реализовать шаблон Unit Of Work .

public interface IRepository<T> where T : class
{
     IQueryable<T> GetQuery();
     IEnumerable<T> GetAll();
     IEnumerable<T> Find(Func<T, bool> where);
     T Single(Func<T, bool> where);
     T First(Func<T, bool> where);

     void Delete(T entity);
     void Add(T entity);
     void Attach(T entity);
     void SaveChanges();
}

Полная статья здесь:

http://elegantcode.com/2009/12/15/entity-framework-ef4-generic-repository-and-unit-of-work-prototype/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...