- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试将 MSDeploy 与参数设置文件选项结合使用,这样我就可以通过使用不同文件覆盖参数来构建一次并部署到多个环境。我从 PowerShell 调用 msdeploy。
msdeploy.exe -verb:sync `
-source:"contentPath='$SourceLocalPath'" `
-dest:"contentPath='$TargetLocalPath',computername='$TargetServer'"
-setParamFile:"$ParamFilePath" `
-verbose
这会导致无法识别参数的错误。
msdeploy.exe : Error: The declared parameter 'SqlConnString' is not recognized.
如果我删除“setParamFile”行,它可以正常部署,但随后会使用默认值。此外,如果我尝试从 IIS 手动导入包,它会显示填充了默认值的参数。
我在 Web 项目的根目录中有一个 Parameter.xml 文件:
<parameters>
<parameter name="SqlConnString" description="Please provide the SQL connection string" defaultValue="...;Initial Catalog=xxx;server=xxx;" tags="">
<parameterEntry kind="XmlFile" scope="\\web.config$" match="/configuration/connectionStrings/add[@name='Sql']/@connectionString" />
</parameter>
</parameters>
正在使用包内的 ...SetParameters.xml 文件创建包,其中包含我的 Parameters.xml 文件中的条目以及标准条目。
<parameters>
<setParameter name="SqlConnString" value="...Initial Catalog=xxx;server=xxx;"/>
...
</parameters>
谢谢
最佳答案
尝试将“名称”中的值从“SqlConnString”更改为“YourSqlConnectionName-Web.config 连接字符串”。如果您想知道确切的名称,您必须查看您的 web.config 文件。上面的示例应该适用于您的 web.config 文件中的这样一个部分:
<connectionStrings>
<add name="YourSqlConnectionName"
connectionString="...;Initial Catalog=xxx;server=xxx;"
providerName="System.Data.EntityClient"/>
</connectionStrings>
所以你应该像这样配置你的 setParameters.xml 文件:
<parameters>
<setParameter name="YourSqlConnectionName-Web.config Connection String" value="...Initial Catalog=xxx;server=xxx;"/>
</parameters>
和您的 Parameters.xml 文件如下:
<parameters>
<parameter name="YourSqlConnectionName-Web.config Connection String" description="Please provide the SQL connection string" defaultValue="...;Initial Catalog=xxx;server=xxx;" tags="">
<parameterEntry kind="XmlFile" scope="\\web.config$" match="/configuration/connectionStrings/add[@name='YourSqlConnectionName']/@connectionString" />
</parameter>
</parameters>
希望这能解决您的问题。
关于powershell - MSDeploy setParamFile 无法识别参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11760456/
我正在尝试将 MSDeploy 与参数设置文件选项结合使用,这样我就可以通过使用不同文件覆盖参数来构建一次并部署到多个环境。我从 PowerShell 调用 msdeploy。 msdeploy.ex
如何使用 MSDeploy API 从 MSDeploy.exe 定义 -setParamFile 参数? 我正在尝试在 powerShell 中编写以下内容: msdeploy -verb:sync
我是一名优秀的程序员,十分优秀!