gpt4 book ai didi

c# - ASP.NET Identity - HttpContext 没有 GetOwinContext 的扩展方法

转载 作者:IT王子 更新时间:2023-10-29 03:27:54 25 4
gpt4 key购买 nike

我已从此处下载并成功运行了 ASP.NET Identity 示例: https://github.com/rustd/AspnetIdentitySample

我现在正在我的项目中实现 ASP.NET Identity 框架,遇到了一个问题,这个问题让我发疯了一整天...

GetOwinContext() does not exist as an extension method on my HttpContext

我正在类库中实现身份框架。我已经安装了所有最新(预发布版本)的身份框架,除此之外一切正常。

我已经尝试在我的 Controller 中直接实现相同的代码,但发现了同样的问题。

我显然在某处遗漏了一个引用,虽然我不知道是什么..!..

杀死我的代码块是:

private IAuthenticationManager AuthenticationManager
{
get
{
return HttpContext.GetOwinContext().Authentication;
}
}

我添加了对以下内容的引用 - 在我的类库中以及直接在 Controller 上尝试了这些,它们都不适合我...

using Microsoft.AspNet.Identity;
using Microsoft.AspNet.Identity.EntityFramework;
using Microsoft.Owin.Security;
using Microsoft.Owin;
using System.Web;

...这让我难以自拔...有什么想法吗?

更新

我已经检查了示例中 Identity 和 OWIN 的版本,并确保我的解决方案中有相同的版本。

更重要的是,如果我在示例的对象浏览器中搜索 GetOwinContext 我可以找到该方法,但是当我在我的解决方案中搜索它时,它无处可寻......我必须有一些库已过时,但我找不到它!

最佳答案

哎呀!

我找到了...我没有一个额外的包,叫做Microsoft.Owin.Host.SystemWeb

一旦我搜索并安装了它,它就起作用了。

现在 - 我不确定我是否错过了所有内容,尽管在浏览各种教程时没有发现对此类库或包的引用。当我安装所有这些身份框架时它也没有安装...不确定是否只有我..

编辑虽然它在 Microsoft.Owin.Host.SystemWeb 程序集中,但它是 System.Web 命名空间中的扩展方法,因此您需要引用前者,并且使用后者。

关于c# - ASP.NET Identity - HttpContext 没有 GetOwinContext 的扩展方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21148209/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com