Visual studio 使用dotnet publish发布整个解决方案时,为每个项目定义发布文件夹

Visual studio 使用dotnet publish发布整个解决方案时,为每个项目定义发布文件夹,visual-studio,.net-core,Visual Studio,.net Core,我有一个C#dotnet核心解决方案,它包含许多项目。然后我想发布我的解决方案来分发我的构建应用程序 当我在带有sln文件的文件夹中运行dotnet publish-o publish/win1064-r win10-x64时(我使用的是dotnet core sdk 3.1),所有生成工件(DLL)都存储在publish/win1064文件夹中。我想在子文件夹中发布一些项目,例如“pluginA”项目的publish/win1064/plugins/pluginA 我可以通过为每个项目运行do

我有一个C#dotnet核心解决方案,它包含许多项目。然后我想发布我的解决方案来分发我的构建应用程序

当我在带有sln文件的文件夹中运行
dotnet publish-o publish/win1064-r win10-x64
时(我使用的是dotnet core sdk 3.1),所有生成工件(DLL)都存储在publish/win1064文件夹中。我想在子文件夹中发布一些项目,例如“pluginA”项目的publish/win1064/plugins/pluginA


我可以通过为每个项目运行
dotnet publish
并相应地设置输出文件夹来实现这一点,但是有没有办法用一个命令来实现呢?

我不知道在解决方案级别调用
dotnet publish
的安全方法,我强烈建议您不要这样做。你可以在那里找到

这就是为什么大多数CI工具允许您使用某种通配符(即,
***.csproj
)在多个项目上运行
dotnet
命令,但不是在解决方案级别

如果您试图在解决方案级别运行测试并从中收集覆盖率/测试结果,您将面临类似的问题。(即,
dotnet测试/p:CollectCoverage=true/p:CoverletOutput=./CoverageResults