在我的解决方案中有几个c#控制台项目,其中每个项目都引用外部dll或本地映像。我想为部署生成一个干净的目录,其中包含,例如,
ConsoleApplication1.exe
ConsoleApplication1-resource1.jpg
ConsoleApplication1-resource2.jpg
ConsoleApplication2.exe
ConsoleApplication3.exe
ConsoleApplication4.exe
ConsoleApplication4-resource1.jpg
ConsoleApplication4-libarary.dll
Common-library-for-all-projects.dll
没有PDB或manifest文件。
我可以修改所有项目设置,以便所有Output path参数指向同一个目录。然而,我需要修改一堆项目设置,我想应该有一个原因,不在项目之间共享相同的输出目录。
我也尝试过Publish...
命令,但我不能在我的解决方案一次发布所有项目,这会产生不必要的安装文件。
我应该如何设置我的Visual Studio解决方案/项目设置自动从多个项目生成一个可分发目录?
您可以使用MSBuild从命令行构建解决方案(或任何特定的项目),并提供OutputPath作为属性,该属性将覆盖在每个项目中配置的值。
%windir%Microsoft.NETFrameworkv4.0.30319msbuild.exe MySolution.sln /p:OutputPath="c:foo"