此命名空间需要什么 NuGet?

What NuGet is required for this namespace?

我可以让这个问题更具体,但是,我时常遇到这个问题,最后放弃并在 S.O 上创建了这个问题。

对于这种特殊情况,我正在按照我当前 API

关于 how to call a downstream API 的 Microsoft 指导进行操作

在上述文章中,我尽职尽责地从微软的 github 帐户下载了源代码..并将所需的源代码片段复制到我的项目中..

一切都准备好编译了,除了我的 Visual Studio IDE 在 this one piece of code 下放了一些小曲线(只有最后一段)..

System.IdentityModel.Tokens.BootstrapContext

我已经浪费了半小时或更长时间试图将庞大的 Nuget packages.conf 文件与我自己的文件进行比较..并且真的不想将不必要的移植到我自己的项目中..

有没有什么神奇的方法可以辨别我需要哪个 nuget?我知道如何右键单击和 Go to definition 但是..有时类名 and/or 命名空间不是立即死掉的赠品


收到您的所有好评后更新


我什至可以承认我已经从事 .NET 开发近 12 年了吗?不,我最好不要...

我会在辩护中说,我确实已经把它放在我的使用中了..

它一直是灰色的,这让我想到:

我没想到:

所以,希望你们这些鼻子里喷着可口可乐的家伙(我能听到你们在走廊尽头的小厨房里大声狂笑)- 可以停止大笑足够长的时间让兄弟们放松一下

在您的情况下,它看起来像是一个系统程序集 (System.IdentityModel.dll)。但是,如果它是一个 NuGet 包,您可以通过以下方式找到哪个包:

  1. 右键单击 class 名称(不是命名空间)和 select Go To Definition
  2. 显示的文件顶部是一个 #region,展开该区域
  3. 区域内是包含dll路径的注释,该路径内是NuGet包的名称。

编辑: 看起来即使在你的情况下这也会起作用,当我为 BootstrapContext 执行此操作时的评论在这里:

C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\System.IdentityModel.dll

这个目录表明它可以从 Add Reference --> Assemblies