我正在尝试获取一个只包含必要dll的可执行文件,但不幸的是,VS甚至将系统dll放入该文件夹中,而根据我所知,这些dll不应与可执行文件一起分发。我想知道是否有办法让VS仅向发布文件夹添加可执行文件无法正常工作的dll,即应该重新分发的那些dll。谢谢。 发布文件夹:
这些程序集是为了解决.NET Standard在完整框架中存在的空缺而设计的。基于该文件夹中的程序集,我假设您的exe针对.NET 4.6.x,并且您正在使用.NET标准库。如果您升级到.NET 4.7.2,您将看到所需的System.*程序集数量大大减少。有关更多详细信息,请参见此答案:为什么我的.NET Standard NuGet包会触发这么多依赖关系?
我假设这是一个dotnet core项目。使用“dotnet publish”命令创建部署文件(截图看起来像VS构建目录?)。如果您之前是使用Windows框架,现在转到使用dotnet core,可能会看到更多的dll,但这取决于您使用的发布选项。 https://learn.microsoft.com/en-us/dotnet/core/tools/dotnet-publish