如何配置dotnet publish命令自动替换web.config中的LAUNCHER相关占位符
解决方案
命令行直接配置(单次发布生效)
在你原有的发布命令基础上,追加两个发布属性即可触发web.config自动转换逻辑,自动替换两个占位符,完整命令如下:
dotnet.exe publish -o "C:\temp\api" /property:Configuration=Debug /p:IsTransformWebConfigDisabled=false /p:EnvironmentName=Production
转换完成后生成的web.config中,processPath会自动设为dotnet,arguments会自动设为你的项目对应的dll文件名,无需手动填写。
项目文件配置(永久生效)
如果需要所有发布场景都自动完成转换,可直接编辑你的项目.csproj文件,在根节点下的PropertyGroup中添加如下配置:
<PropertyGroup> <IsTransformWebConfigDisabled>false</IsTransformWebConfigDisabled> </PropertyGroup>
配置完成后,直接使用原有发布命令即可自动完成占位符替换。
原理说明
Debug配置默认会保留%LAUNCHER_PATH%、%LAUNCHER_ARGS%占位符用于本地开发调试,只有显式开启web.config转换逻辑后,发布流程才会将占位符替换为实际运行参数。
内容的提问来源于stack exchange,提问作者Georgi Koemdzhiev
相关产品推荐
相关产品推荐

