C# 使用DI使用Castle Windsor注入ASP.NET标识

C# 使用DI使用Castle Windsor注入ASP.NET标识,c#,asp.net-mvc,dependency-injection,castle-windsor,asp.net-identity-2,C#,Asp.net Mvc,Dependency Injection,Castle Windsor,Asp.net Identity 2,我想做的是防止在ASP.NET中多次登录。 我接着写了这篇文章: 之后,我学习了本文:将主键的数据类型从string(默认)更改为long。但我仍然无法阻止多次登录 我发现它不起作用的原因是我无法获得UserManager的实例 app.CreatePerOwinContext(()=>DependencyResolver.Current.GetService()) 上面的代码不起作用。我犯了一个错误 对象引用未设置为对象的实例 之后,我找到了这篇文章:并试图理解代码,但它使用的是unity。但

我想做的是防止在ASP.NET中多次登录。
我接着写了这篇文章:

之后,我学习了本文:将主键的数据类型从string(默认)更改为long。但我仍然无法阻止多次登录

我发现它不起作用的原因是我无法获得UserManager的实例

app.CreatePerOwinContext(()=>DependencyResolver.Current.GetService())

上面的代码不起作用。我犯了一个错误

对象引用未设置为对象的实例

之后,我找到了这篇文章:并试图理解代码,但它使用的是unity。但上面有一个链接是使用Castle Windsor的:我不知道这是从哪里来的:

var container = DIContainer.GetConfiguredContainer();
更新
现在我意识到我无法获取对象实例的原因是因为我不能像其他.cs文件一样将UserManager注入StartUp.cs中。 例如:

private readonly UserManager _userManager;

public StartUp(UserManager userManager)
{
      _userManager = userManager;
}
上面的代码告诉我这个错误:

没有为此对象定义无参数构造函数


请帮帮我!!!这件事困扰了我几个星期

这个问题已经解决了。请转到下面的链接,检查它是如何被修复的

希望这能帮助那些试图阻止多次登录的人。

如果您有任何问题,请随时问我,我会尽力帮助您。

此问题已解决。请转到下面的链接,检查它是如何被修复的

希望这能帮助那些试图阻止多次登录的人。
如果你有任何问题,请随时问我,我会尽力帮助你