Was ich tun wollte, ist mehrere Anmeldungen in ASP.NET zu verhindern.
Und ich folgte diesen Artikel: Prevent Multiple Login in ASP.NETVerwenden von DI, um ASP.NET-Identität mit Castle Windsor zu injizieren
Danach folgte ich diesen Artikel: Changing PK data type den Datentyp des Primärschlüssels aus Zeichenfolge (Standard), um lange zu ändern. Aber ich kann immer noch nicht mehrere Login verhindern.
Ich fand heraus, dass der Grund, warum es nicht funktioniert, weil ich nicht eine Instanz von Usermanager
app.CreatePerOwinContext(() => DependencyResolver.Current.GetService<UserManager>());
Der obige Code funktioniert nicht bekommen kann. Ich erhalte Fehler von
Object reference not set to an instance of an object.
Danach habe ich diesen Artikel gefunden: AspNet Identity and IoC Container Registration und versuchte, den Code zu verstehen, aber es ist mit der Einheit. Aber es gibt einen Link über dieses Artikels, das Schloss Windsor verwendet: Castle Windsor und ich weiß nicht, was wo tut dies kommt aus:
var container = DIContainer.GetConfiguredContainer();
UPDATE
Jetzt erkenne ich, dass der Grund, dass ich Ich bekomme die Instanz des Objekts nicht, weil ich UserManager in StartUp.cs nicht wie andere CS-Dateien injizieren kann. Zum Beispiel:
private readonly UserManager _userManager;
public StartUp(UserManager userManager)
{
_userManager = userManager;
}
Und der Code oben geben Sie mir diesen Fehler:
No parameterless constructor defined for this object
Bitte helfen Sie mir !!! Es steckte mich für ein paar Wochen