Visual Studio C#不允许我使用Microsoft.AspNet.Identity命名空间

时间:2016-11-09 15:58:17

标签: c# asp.net using-directives

为什么我的应用程序不允许我使用以下命名空间:

 using Microsoft.AspNet.Identity;

我有什么方法可以在Visual Studio 2015中摆脱这种情况吗?

5 个答案:

答案 0 :(得分:4)

虽然这里的其他答案在解释如何解决此问题时是正确的,但他们并不真正了解您正在做什么或为什么有必要。

默认情况下引用的库不包含Microsoft.AspNet.Identity命名空间中的类型。因此,您需要引用包含该程序集的程序集,以便能够在代码中使用它(并使您的using语句有效)。

在.NET中,有两种常用方法可以添加对未包含的程序集的引用。

您可以将.dll文件下载到您的计算机,然后在解决方案资源管理器中右键单击您的项目或参考节点,然后浏览到您下载文件的位置。但是,这种“松散的DLL”方法有一些缺点。你必须手动找到DLL的。如果要获取程序集的更新版本,则必须重复此过程。而且很难知道更新的装配何时可用,或者在哪里可以找到装配。

更好的解决方案是使用NuGet引入外部程序集。 NuGet是一个“包管理器”。这是从集中式存储库安装程序集的简便方法。在nuget.org有一个公共NuGet存储库,.NET社区的大多数成员上传其有用的程序集供其他人使用。实际上,Microsoft发布了一个包Microsoft.AspNet.Identity.Core,其中包含一个包含Microsoft.AspNet.Identity命名空间中类型的程序集。

您可以通过打开解决方案资源管理器,右键单击项目,单击管理NuGet包,找到Microsoft.AspNet.Identity.Core包并单击安装(也可以在此处查看是否可以查看)来将此NuGet包安装到项目中您有可用的包更新并安装它们)。或者,您可以打开包管理器控制台(工具> NuGet包管理器>包管理器控制台),然后执行以下命令

Install-Package Microsoft.AspNet.Identity.Core

您可以使用此知识在应用程序中安装大量有用的库。 NuGet.org在其存储库中有超过65,000个包。

答案 1 :(得分:2)

我没有安装NuGet包。为此,(在Visual Studio中)我转到Tools -> NuGet Package Manager -> Manage NuGet Packages for Solution并安装了Microsoft.AspNet.Identity.Core包。

对于第一次使用新软件包和命名空间的人,就像我一样,不要绝望。它并不像看起来那么复杂!

答案 2 :(得分:1)

您需要引用Microsoft.AspNet.Identity.Core。你可以通过NuGet从

获得这个

https://www.nuget.org/packages/Microsoft.AspNet.Identity.Core/

基本上在您的软件包管理器控制台中,您需要使用以下命令:

Install-Package Microsoft.AspNet.Identity.Core

答案 3 :(得分:1)

从nuget Install-Package Microsoft.AspNet.Identity.Core

安装软件包

VS2015     工具> Nuget包管理器>包管理器控制台

PM> Install-Package Microsoft.AspNet.Identity.Core按Enter键

然后using Microsoft.AspNet.Identity;在.cs页面中添加一个using语句

答案 4 :(得分:1)

Microsoft尚未提供const TEST = { "a1": "world", "a2": "hello", "a3": this.a1 }; 中的所有引用。要解决上述问题,要安装Microsoft ASP.NET Identity Core,请在程序包管理器控制台中运行以下命令

Visual Studio 2015

有关更多信息,请参阅here