Ce que je voulais faire est d'empêcher plusieurs connexions dans ASP.NET.
Et je suivais cet article: Prevent Multiple Login in ASP.NETUtilisation de DI pour injecter l'identité ASP.NET à l'aide de Castle Windsor
Après que je suivais cet article: Changing PK data type changer le type de données de clé primaire de la chaîne (par défaut) de long. Mais je ne peux toujours pas empêcher plusieurs connexions.
j'ai découvert que la raison pour laquelle il ne fonctionne pas parce que je ne peux pas obtenir une instance de UserManager
app.CreatePerOwinContext(() => DependencyResolver.Current.GetService<UserManager>());
Le code ci-dessus ne fonctionne pas. Je reçois erreur de
Object reference not set to an instance of an object.
Après que je trouve cet article: AspNet Identity and IoC Container Registration et essayé de comprendre le code, mais il utilise l'unité. Mais il y a un lien ci-dessus de cet article qui utilise le château de Windsor: Castle Windsor et je ne sais pas ce que le fait où vient:
var container = DIContainer.GetConfiguredContainer();
MISE À JOUR
Maintenant, je me rends compte que la raison pour laquelle je peux 't obtenir l'instance de l'objet est parce que je ne peux pas injecter UserManager dans StartUp.cs comme les autres fichiers .cs. Par exemple:
private readonly UserManager _userManager;
public StartUp(UserManager userManager)
{
_userManager = userManager;
}
Et le code ci-dessus me donne cette erreur:
No parameterless constructor defined for this object
S'il vous plaît aidez-moi !!! Il m'a coincé pendant quelques semaines