J'ai vu deux approches différentes pour la création des référentiels génériques. Quelles sont les différences entre ces deux approches (avantages et inconvénients) ? Veuillez diregard différence dans les méthodes parce que je m'intéresse à la différence entre les
public interface IRepository<T> where T : class
et
public interface IRepository : IDisposable
Est-il une différence en termes de fonctionnalité, de flexibilité, de tests unitaires ... ? Que vais-je obtenir ou perdre ?
Est-il une différence de comment ils sont inscrits dans l'Injection de Dépendance des cadres ?
Option 1
public interface IRepository<T> where T : class
{
T Get(object id);
void Attach(T entity);
IQueryable<T> GetAll();
void Insert(T entity);
void Delete(T entity);
void SubmitChanges();
}
Option 2
public interface IRepository : IDisposable
{
IQueryable<T> GetAll<T>();
void Delete<T>(T entity);
void Add<T>(T entity);
void SaveChanges();
bool IsDisposed();
}