Вот несколько фрагментов из моего общего репозитория:
public void Add<K>(K entity) where K : class
{
context.CreateObjectSet<K>().AddObject(entity);
}
public K SingleOrDefault<K>(Expression<Func<K, bool>> predicate) where K : class
{
K entity = context.CreateObjectSet<K>().SingleOrDefault<K>(predicate);
return entity;
}
Пожалуйста, смотрите ссылку ниже: http://msdn.microsoft.com/en-us/library/dd382944.aspx
Редактировать: Если у вас уже естьсозданный ObjectSet, тогда ваш класс уже определяет TEntity, поэтому ваш метод должен быть настроен следующим образом:
public void Add(TEntity entity)
{
ObjectSet.AddObject(entity);
}
Вы также должны иметь возможность выполнить настройку, аналогичную вашему методу Single (), не должно быть необходимости вотбрасывать.