如何构建和部署具有多个项目的 visual studio 解决方案

How to build and deploy a visual studio solution with multiple projects

到目前为止,我一直是 using/practicing Visual Studio (VS) 使用单个项目创建、编译和部署解决方案。这非常简单,至少对我而言。您只需转到 ..\bin\release 文件夹并将所有文件压缩到其中,其中也包含所有依赖项。

现在我正在研究多个项目的解决方案。我有一个具有以下解决方案安排的 windows 服务项目。

解决方案-ServiceXYZ

我将ServiceXYZ设置为启动项目。它还引用项目 1 到 3,每个项目还引用一个外部 DLL。每个项目中的构建路径是 \bin\Release.

构建和部署此 windows 服务的最佳方式是什么?构建解决方案后,是否需要手动将每个项目中的每个 DLL 和服务项目中的 EXE 复制到一个文件夹并压缩它?我想我可以将每个项目中的构建路径设置为一个公共文件夹,但这似乎不对。

ServiceXYZ\bin\release 文件夹似乎包含所有依赖项,EXE 文件,包括 app.config 和 serviceXYZ.exe.config。是因为这个项目是启动项目吗?另外,我只想要 serviceXYZ.exe.config,而不是 app.config,因为它可能会使用户感到困惑。我想我不必为部署复制它。

将 log4net 添加到这个组合中,现在我正在为日志文件的位置和 log4net.config 应该在哪里而烦恼。

为整个解决方案设置输出目录以便所有 DDL、EXE 和 log4net.config 和 mylog.log 都在一个位置的最佳方法是什么?

谢谢

.EXE 个文件添加到项目时,查找它们的属性。在那里你会找到一个 属性 CopyToOutputDirecory。将其设置为 TRUE.

添加引用时,.dlls,查找它们的属性。在那里你会找到一个 属性 CopyLocal。将其设置为 TRUE.

其他文件也一样,你应该得到 属性 Copy To Output Directory.

当您将另一个项目添加到当前项目时,将其输出目录设置为与当前相同。意味着两个项目的输出目录必须相同。