【问题标题】:Why does .NET Core not add the reference Dlls from the nuget packages to the bin folder为什么 .NET Core 不将 nuget 包中的引用 Dll 添加到 bin 文件夹中
【发布时间】:2017-11-03 08:41:59
【问题描述】:

.Net Core 项目不会将 nuget 包中的参考 DLL 放在 bin 文件夹中。有没有一种方法可以帮助做到这一点? 一些第三方工具需要它来理解参考 DLL。

【问题讨论】:

  • 您使用的是 VS2015 (.xproj) 还是 VS2017 (.csproj) 版本的 asp.net core?
  • 使用 VS 2017 (.csproj)

标签: asp.net-core asp.net-core-1.1


【解决方案1】:

.NET Core 与 .NET Framework 不同,可以从六个位置解析程序集。这包括 NuGet 缓存、服务缓存、运行时存储、本地应用程序目录和共享框架文件夹。在开发过程中,这些通常位于 NuGet 缓存 (%USERPROFILE%.NuGet\packages) 中,这使得在发布应用程序之前无需将引用的程序集复制到生成输出文件夹 (bin)。有关其工作原理的更多详细信息,请参阅https://github.com/dotnet/core-setup/blob/master/Documentation/design-docs/corehost.md

您可以通过以下设置强制 SDK 将程序集复制到您的构建文件夹,但它会增加磁盘使用和构建时间。

<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>

或者您可以使用 deps.json 和 runtimeconfig.json 文件来定位所需的程序集。

【讨论】:

    猜你喜欢
    • 2017-05-25
    • 1970-01-01
    • 2018-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-25
    • 2019-01-17
    相关资源
    最近更新 更多