Injizieren des Benutzermanagers in den Account Controller mit dem Standardidentitätsmodell in Identity 2 mithilfe von Ninject
Ich verwende Ninject in einem MVC 5-Projekt mit Identity 2.
Für den Rest des Datenkontexts und die Controller, die das verwenden, habe ich keine Probleme mit der Abhängigkeitsinjektion.
Für Kontocontroller, die das Identity 2-Modell verwenden, erhalte ich beim Versuch, mich anzumelden, den Wert null.
public class AccountController : Controller
{
private ApplicationUserManager _userManager;
public AccountController()
{
}
public AccountController(ApplicationUserManager userManager)
{
UserManager = userManager;
}
public ApplicationUserManager UserManager {
get
{
return _userManager ?? HttpContext.GetOwinContext().GetUserManager<ApplicationUserManager>();
}
private set
{
_userManager = value;
}
}
Wie können erforderliche Abhängigkeiten korrekt eingefügt werden? Ich habe keinen benutzerdefinierten UserManager erstellt. Dieser ist ein Standardmodell. ApplicationUserManager ist wie in IdentityConfig.cs unter App_Start definiert.
Als Randnotiz: Ich verwende die Conventions Extension von Ninject:
private static void RegisterServices(IKernel kernel)
{
kernel.Bind(
x => x.FromThisAssembly()
.SelectAllClasses()
.BindAllInterfaces()
);
Vielen Dank.