Visual Studio 2017 - 发布文件夹中可能不需要的dll文件

3
我正在尝试获取一个只包含必要dll的可执行文件,但不幸的是,VS甚至将系统dll放入该文件夹中,而根据我所知,这些dll不应与可执行文件一起分发。我想知道是否有办法让VS仅向发布文件夹添加可执行文件无法正常工作的dll,即应该重新分发的那些dll。
谢谢。 发布文件夹: Release folder

1
https://learn.microsoft.com/en-us/dotnet/core/deploying/ - Hans Passant
这些不是在GAC中的“系统”程序集。这些是包含在.NET Standard NuGet包中的程序集,您可以直接引用或者是您引用的包或框架的依赖项。它们是您的应用程序正常运行所必需的。 - Martin Liversage
2个回答

5
这些程序集是为了解决.NET Standard在完整框架中存在的空缺而设计的。基于该文件夹中的程序集,我假设您的exe针对.NET 4.6.x,并且您正在使用.NET标准库。
如果您升级到.NET 4.7.2,您将看到所需的System.*程序集数量大大减少。
有关更多详细信息,请参见此答案:为什么我的.NET Standard NuGet包会触发这么多依赖关系?

0
我假设这是一个dotnet core项目。使用“dotnet publish”命令创建部署文件(截图看起来像VS构建目录?)。如果您之前是使用Windows框架,现在转到使用dotnet core,可能会看到更多的dll,但这取决于您使用的发布选项。

https://learn.microsoft.com/en-us/dotnet/core/tools/dotnet-publish


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接