Wie kommuniziere ich mit dem UserService über eine überladene MembershipProvider-Klasse? Ich habe keine Ahnung, wie die Verbindungszeichenfolge an das Benutzer-Repository im Service übergeben werden soll.
So ist meine App strukturiert:
Repository (Konstruktor in der Implementierung benötigt eine Verbindungszeichenfolge)
%Vor%Service (Konstruktor nimmt ein Benutzer-Repository)
%Vor%UserController (Ein Beispiel für meinen Controller)
%Vor%NinjectConfigurationModule
%Vor%NinjectControllerFactory
%Vor%MembershipProvider (Hier ist mein Problem)
%Vor%Frage bereits beantwortet, aber ich denke, die bessere Antwort ist, das Repository zu einer Eigenschaft in Ihrem MembershipProvider zu machen und es in Application_Start einzufügen. z.B.
%Vor%und die Injektion:
%Vor%Ich habe hier eine ausführlichere Erklärung geschrieben:
Sie können die MembershipProvider.Initialize-Funktion außer Kraft setzen und benötigen außerdem einige Einstellungen in web.config
%Vor%web.config
%Vor%Ich habe auch einen benutzerdefinierten Mitgliedschaftsanbieter wie Sie erstellt. In der Login-Aktion des Benutzer-Controllers wird die validateuser-Funktion wie folgt aufgerufen:
%Vor%Aber letztendlich gebe ich den Mitgliedschaftsanbieter auf und füge eine neue Funktion ValidateUser in IUserService hinzu und dann den Code wie folgt:
%Vor%Ich denke, das ist einfacher.
Tags und Links asp.net-mvc membership-provider ninject