J'implémente l'injection de dépendance Ninject dans une application MVC 2 existante qui utilise un contrôleur de base que tous les contrôleurs héritent pour définir la navigation et d'autres informations requises par la page maître. Quand je mets un contrôleur à hériter du contrôleur de base, j'obtiens l'erreur suivante: "... BaseController" ne contient pas un constructeur qui prend 0 arguments Comment est-ce que je contourne cette erreur? Je suis nouveau à Ninject et peux ' t Figure cela.MVC Base Controller et Ninject
public class BaseController : Controller
{
private INavigationRepository navigationRepository;
private ISessionService sessionService;
public BaseController(INavigationRepository navigationRepository, IMembershipService membershipService, ISessionService sessionService)
{
this.navigationRepository = navigationRepository;
this.sessionService = sessionService;
}
}
public class HomeController: BaseController
{ ... }
J'y suis allé avec l'injection de la propriété. Merci pour la solution. – scottrakes
propriété inj L'ection n'est pas plus propre. C'est l'inverse. Vous voulez avoir les dépendances en lecture seule autant que possible. –
oui nettoyeur était le mauvais mot ... c'est plus pratique car vous n'avez pas besoin de déclarer le ctor dans tous vos contrôleurs. – dotjoe