Вы можете использовать шаблон Репозиторий , где вы реализуете репозиторий как интерфейс, а затем базовый класс. Например:
IRepository where T : class<br/>
void Save(T entity )<br />
T FindById( T id )
....</p>
<p>EntityFrameworkRepositoryBase : IRepository<br />
void Save( T entity )<br />
{
// do EF specfic stuff
}....
Затем для данной сущности вы можете создать (или внедрить) конкретный репозиторий:
PersonRepository : EntityFrameworkRepositoryBase
Оттуда просто вызовите PersonRepository, чтобы сохранить или найти людей.