如何使用MSDeploy API定义setParamFile

Jon*_*eus 4 powershell msdeploy

如何使用MSDeploy API从MSDeploy.exe定义-setParamFile参数?

我正在尝试在powerShell中编写以下内容的等价物:

msdeploy -verb:sync -source:package="c:\MyZip.zip" -dest:auto -setParamFile="c:\StagingParameters.xml"
Run Code Online (Sandbox Code Playgroud)

这是我到目前为止所拥有的:

[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.Web.Deployment")
$destBaseOptions   = new-object Microsoft.Web.Deployment.DeploymentBaseOptions
$syncOptions       = new-object Microsoft.Web.Deployment.DeploymentSyncOptions
$deploymentObject = [Microsoft.Web.Deployment.DeploymentManager]::CreateObject("package","C:\MyZip.zip")

#TODO -setParamFile="c:\StagingParameters.xml"

$deploymentObject.SyncTo("auto","",$destBaseOptions,$syncOptions);
Run Code Online (Sandbox Code Playgroud)

Jon*_*eus 8

得爱反射器!

[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.Web.Deployment")
$destBaseOptions   = new-object Microsoft.Web.Deployment.DeploymentBaseOptions
$syncOptions       = new-object Microsoft.Web.Deployment.DeploymentSyncOptions
$deploymentObject = [Microsoft.Web.Deployment.DeploymentManager]::CreateObject("package","C:\MyZip.zip")

#-setParamFile
$deploymentObject.SyncParameters.Load("c:\StagingParameters.xml");

$deploymentObject.SyncTo("auto","",$destBaseOptions,$syncOptions);
Run Code Online (Sandbox Code Playgroud)