.net核心不要将参考Dll从nuget软件包添加到bin文件夹

问题描述:

.net核心项目不会将参考DLL从nuget软件包获取到bin文件夹。有没有一种方法可以帮助你做到这一点。 它需要一些第三方工具来理解参考DLL。.net核心不要将参考Dll从nuget软件包添加到bin文件夹

+0

您是否使用asp.net核心的VS2015(.xproj)或VS2017(.csproj)版本? – Sanket

+0

使用VS 2017(.csproj) – Satyajit

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

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

<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies> 

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

+0

这是一个愚蠢的选择。首先确保它的工作。只是。 (=箱的方式)即使它使用更多的空间。然后,只有警告用户,如果他准备在配置文件和[非]已知位置上调整x数量的密钥,那么可能会有更好的方法。我没有时间。 – frenchone