web-dev-qa-db-fra.com

Ninject + Bind Generic Repository

J'essaie de lier un IRPOSitory générique <> interface à mon référentiel générique <> - Cependant, cela renvoie toujours null?

J'ai essayé diverses choses comme:

Bind(typeof(IRepository<CustomerModel>)).To(typeof(Repository<CustomerModel>)); 
Bind(typeof(IRepository<>)).To(typeof(Repository<>)); 

Cependant, si je passe dans une interface et une classe non génériques, cela fonctionne comme un rêve?

48
ebb
Bind(typeof(IRepository<>)).To(typeof(Repository<>));

Ceci est la syntaxe correcte pour lier un générique ouvert.

Si vous recevez NULL Retour lorsque vous demandez IRepository< of whatever >, il peut y avoir un autre problème dans une zone de code que vous n'avez pas partagé.

82
quentin-starin

Voir ma réponse sur Constructeur de contrôleur MVC3 + NInject .

La liaison générique fonctionne correctement dans Ninject. Essayez d'utiliser un constructeur sans paramètre dans le référentiel. Je pense que le problème est là.

3
Remo Gloor