Comment utiliser le Référentiel d'Interface qui utilise les Génériques avec l'Injection de Dépendance?

Je suis en essayant d'utiliser le Générique suivant le Référentiel de l'Interface pour les DI et constructeur d'injection:

public interface IRepository<TEntity> : IDisposable where TEntity : class

Le problème est dans le but de définir une instance de l'Interface, je dois fournir le type de classe comme ceci:

private IRepository<Person> _personRepository;

Le problème, c'est que si je suis à l'aide de DI (et je suis en utilisant l'Unité de Cio cadre), puis-je définir plusieurs instances dans mon constructeur pour obtenir tous référentiel des interfaces j'ai besoin de travailler avec, comme ceci:

public MyClass(IRepository<Person> personRepository,
               IRepository<Orders> ordersRepository,
               IRepository<Items> itemsRepository,
               IRepository<Locations> locationsRepository)
{
  _personRepository = personRepository;
  _OrdersRepository = ordersRepository; 
  _itemsRepository = itemsRepository;
  _locationsRepository = locationsRepository;
}

Questions:

  1. Est-ce OK?
  2. Si pas où me suis-je perdue sur ce concept?
  3. Même si c'est bon, ce qui est le point de l'Unité pour vous inscrire Interface de type de béton? Je l'ai déjà fait parce que le générique référentiel m'a forcé sur la déclaration.

S'il vous plaît aider éclaircir ce point pour moi, et je vous remercie tous de votre aide!

InformationsquelleAutor atconway | 2013-01-16