gpt4 book ai didi

msbuild - MS Deploy 可以打包和转换,但不能部署吗?

转载 作者:行者123 更新时间:2023-12-03 23:27:20 25 4
gpt4 key购买 nike

在 .NET 4.0 中使用 msbuild,我可以使用“Package”目标构建 Web 项目,并且可以很好地将包放入 zip 文件中。但是,当我查看其中的 web.config 时,它并没有被转换,它有“$(ReplacableToken_Web_SiteConnection-Web.config Connection String_0)”

我可以运行“TransformWebConfig”目标,它会进行正确的转换,但只是在它自己的筒仓中。

我还可以运行“Build”目标并传递“DeployOnBuild=True;DeployTarget=MSDeployPublish”属性,它会在我的服务器上部署包并完成正确的 web.config 转换。

但是,如果我想手动将包部署到服务器,如何使用“TransformWebConfig”执行“包”,以便 zip 文件中包含最终的 web.config?

最佳答案

如果您想避免这种情况发生,那么您需要在构建中设置一个属性。你可以通过两种方式做到这一点

  • 编辑您的项目文件
  • 创建一个 .wpp.targets 文件

  • 我会推荐#2。对于这种情况,在与您的项目文件相同的目录中创建一个名为 {ProjectName}.wpp.targets 的新文件,其中 {ProjectName} 是您的项目的名称。然后在这个文件中你应该放置以下内容。
    <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"
    ToolsVersion="4.0">
    <PropertyGroup>
    <AutoParameterizationWebConfigConnectionStrings>false</AutoParameterizationWebConfigConnectionStrings>
    </PropertyGroup>
    </Project>

    在这种情况下,您正在设置属性 AutoParameterizationWebConfigConnectionStrings它告诉 Web Publishing Pipeline 不要在 web.config 中为连接字符串插入那些 {} 占位符。

    关于msbuild - MS Deploy 可以打包和转换,但不能部署吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3620363/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com