【发布时间】:2018-01-30 07:13:56
【问题描述】:
我的解决方案的许多项目的 package.config 中都有这个 dll (Microsoft.web.Infrastructure.dll)。没有构建错误,并且 dll 正在下载到 Solution's packages 文件夹。 我在应用程序命中的每个项目上都缺少 dll 时出现运行时错误。当我查看单个项目 bin 文件夹时,我没有看到这个 dll 被复制。然而,正如我之前提到的,dll 被下载到解决方案的包文件夹中。
临时解决方案 -
- 手动将此 dll 复制到所有单个项目 bin
- 将此 dll 放入 GAC 中
这个问题只出现在我的机器上,而不是任何其他同事的机器上。令人惊讶的是,有些人将此 dll 复制到项目文件夹中,而有些人没有。在 GAC 中没有这个 dll 并且没有任何手动操作,它适用于他们,干净的重建为他们完成了一切。
我有一个短期修复,但我更想知道它如何在其他机器上工作以及我缺少什么。
到目前为止我尝试过的事情 - 清理 Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root.... 清理解决方案并关闭重新打开解决方案,最后重建解决方案
与 Visual Studio 2013 相比,Visual Studio 2015 没有明确的 nuget 缓存。
仅供参考 - 我有 Visual Studio 2015,所有其他机器都在 2013 上,如果不是其他机器,这就是我现在正在查看的地方。
感谢任何帮助。
【问题讨论】:
-
你可以尝试重新安装包 -
Update-Package –reinstall Microsoft.Web.Infrastructure -
这里似乎有一些相关信息:stackoverflow.com/questions/13149851/…
-
Win - 当我清理和重建时,我认为它会重新安装它。此外,问题仍然是它如何在其他机器上工作。
-
彼得 - 谢谢你的帖子。我不想在 package.config 中定义本地版本的 dll 时引用它。它应该把它捡起来。在我看来,这个新框架中的一些缓存或其他东西是关于如何获取这些的。
标签: c# .net visual-studio-2015 nuget nuget-package