我正在为 .NET 8 Web API 项目构建 WiX Toolset 5 安装程序。我熟悉旧版本的 WiX。
我遇到的问题是,当我执行
dotnet publish
时,这会创建额外的必需文件(最明显的是 web.config),这些文件不是用 dotnet build
创建的
在我的 WiX 项目中,如何引用 Web API 项目的发布目录?以前我总是使用 TargetDir 变量,但这是构建输出,因此我收到丢失文件错误。
<Component>
<File Source="$(var.MyWebApiProject.TargetDir)web.config" />
</Component>
我想避免对任何目录进行硬编码,因为这也需要在 DevOps 管道中运行。理想情况下,我也想避免任何手动复制。
将
Publish='true'
添加到 .wixproj 中的 ProjectReference
项,WiX 构建将发布并引用目标项目。