OrchestrationBinding (esempio di BizTalk Server)
L'esempio OrchestrationBinding mostra l'uso di oggetti amministrativi Microsoft.BizTalk.ExplorerOM per configurare e gestire le orchestrazioni.
Prerequisiti
Questo esempio richiede che l'esempio HelloWorld venga distribuito eseguendo setup.bat situato nella < directory Samples Path>\Orchestrations\HelloWorld.
È necessario disporre di BizTalk Server privilegi amministrativi per usare gli oggetti amministrativi in questo esempio.
L'esecuzione dell'esempio di script di Windows PowerShell richiede i criteri di esecuzione di Windows PowerShell. Per ulteriori informazioni, vedere la pagina relativa all' analisi dei criteri di esecuzione.
Scopo dell'esempio
In questo esempio viene illustrato l'utilizzo degli oggetti amministrativi dello spazio dei nomi Microsoft.BizTalk.ExplorerOM per la gestione delle orchestrazioni. Nell'esempio vengono illustrate le operazioni seguenti utilizzando gli oggetti di ExplorerOM :
Connessione al database di gestione BizTalk usando la classeMicrosoft.BizTalk.ExplorerOM.BtsCatalogExplorer .
Arresto e avvio delle orchestrazioni modificando la proprietà Status della classe Microsoft.BizTalk.ExplorerOM.BtsOrchestration .
Integrazione e rimozione delle orchestrazioni modificando la proprietà Status della classe Microsoft.BizTalk.ExplorerOM.BtsOrchestration .
Associazione e annullamento dell'associazione delle orchestrazioni usando la raccolta Ports nella classe Microsoft.BizTalk.ExplorerOM.BtsOrchestration .
Percorso dell'esempio
L'esempio è disponibile nel seguente percorso dell'SDK:
<Percorso> esempi\Amministrazione\ExplorerOM\OrchestrationBinding
Nella seguente tabella sono riportati i file inclusi nell'esempio e ne viene descritto lo scopo.
File | Descrizione |
---|---|
OrchestrationBinding.cs | File di origine visual C# per le operazioni illustrate in questo esempio. |
OrchestrationBinding.sln, OrchestrationBinding.csproj, OrchestrationBinding.suo | File di soluzione e di progetto per l'esempio. |
Compilare questo esempio
Assicurarsi di che aver completato i passaggi per la compilazione e l'inizializzazione dell'esempio HelloWorld. Questi passaggi vengono forniti in HelloWorld (BizTalk Server Esempio).
In Visual Studio aprire il file di soluzione OrchestrationBinding.sln.
Nel menu Compila scegliere Compila soluzione.
Esegui questo esempio
Aprire una finestra di comando e passare alla cartella seguente:
<Percorso> esempi\Amministrazione\ExplorerOM\OrchestrationBinding\bin\Debug
Eseguire il file OrchestrationBinding.exe e seguire le istruzioni fornite nell'esempio.
Esempio di script di Windows PowerShell
Il seguente script di Windows PowerShell può essere utilizzato per illustrare le stesse funzionalità delle classi di ExplorerOM :
Function RefreshPrompt($oldstatus,$newstatus)
{
Write-Host Orchestration Status should now be `"$oldstatus`"
Write-Host Press F5 in the Orchestrations view of BizTalk Server Administration Console to refresh and verify
if ($newstatus)
{
Write-Host Pressing `<Enter`> now will $newstatus the orchestration using ExplorerOM`.`.`.
Read-Host
Write-Host "=== Please wait, attempting to $newstatus the orchestration... ===`r`n"
}
else
{
write-host `r`n
}
}
#===================#
#=== Main Script ===#
#===================#
#=== Make sure the ExplorerOM assembly is loaded ===#
[void] [System.reflection.Assembly]::LoadWithPartialName("Microsoft.BizTalk.ExplorerOM")
#=== Connect to the BizTalk Management database ===#
$Catalog = New-Object Microsoft.BizTalk.ExplorerOM.BtsCatalogExplorer
$Catalog.ConnectionString = "SERVER=.;DATABASE=BizTalkMgmtDb;Integrated Security=SSPI"
#=== This sample expects the HelloWorld sample orchestration to be using the ===#
#=== default name "Biztalk Application 1" ===#
$HelloWorldApp = $Catalog.Applications["Biztalk Application 1"]
$orch = $HelloWorldApp.orchestrations["Microsoft.Samples.BizTalk.HelloWorld.HelloSchedule"]
#==================================================================#
#=== Register a trap handler to discard changes on exceptions ===#
#=== Execution will continue in the event we need to re-enlist, ===#
#=== re-bind, or restart the orchestration. ===#
#==================================================================#
$ErrorActionPreference="silentlycontinue"
trap { "Exception encountered:`r`n"; $_; "`r`nDiscarding Changes and continuing execution...`r`n";$Catalog.DiscardChanges();}
write-host `r`nMake sure the "HelloWorld" sample application is deployed and running.
write-host By default it will be listed in the BizTalk Server Administration Console
write-host with the application name: `"BizTalk.Application.1`"`r`n
#==========================================================#
#=== Change orchestration state from Started to stopped ===#
#==========================================================#
RefreshPrompt Started stop
$orch.Status = [Microsoft.BizTalk.ExplorerOM.OrchestrationStatus] "Enlisted"
$Catalog.SaveChanges()
#=============================================================#
#=== Change orchestration state from stopped to unenlisted ===#
#=============================================================#
RefreshPrompt Stopped unenlist
$orch.Status = [Microsoft.BizTalk.ExplorerOM.OrchestrationStatus] "Unenlisted"
$Catalog.SaveChanges()
#=============================================================#
#=== Change orchestration state from unenlisted to unbound ===#
#=============================================================#
RefreshPrompt Unenlisted unbind
$orch.Ports["SendInvoicePort"].SendPort = $null
$orch.Ports["ReceivePOPort"].ReceivePort = $null;
$orch.Host = $null
$Catalog.SaveChanges()
#==================================================================#
#=== Change orchestration state from unbound back to unenlisted ===#
#==================================================================#
RefreshPrompt Unenlisted`(Unbound`) re-bind
$orch.Ports["SendInvoicePort"].SendPort = $Catalog.SendPorts["HelloWorldSendPort"]
$orch.Ports["ReceivePOPort"].ReceivePort = $Catalog.ReceivePorts["HelloWorldReceivePort"]
$orch.Host = $Catalog.Hosts["BizTalkServerApplication"]
$Catalog.SaveChanges()
#==================================================================#
#=== Change orchestration state from unenlisted back to stopped ===#
#==================================================================#
RefreshPrompt Unenlisted enlist
$orch.Status = [Microsoft.BizTalk.ExplorerOM.OrchestrationStatus] "Enlisted"
$Catalog.SaveChanges()
#===============================================================#
#=== Change orchestration state from stopped back to started ===#
#===============================================================#
RefreshPrompt Stopped restart
$orch.Status = [Microsoft.BizTalk.ExplorerOM.OrchestrationStatus] "Started"
$Catalog.SaveChanges()
RefreshPrompt Started
Di seguito è riportato un output di esempio dell'esecuzione dello script di Windows PowerShell.
PS C:\> .\OrchestrationBind.ps1
Make sure the HelloWorld sample application is deployed and running.
By default it will be listed in the BizTalk Server Administration Console
with the application name: "BizTalk.Application.1"
Orchestration Status should now be "Started"
Press F5 in the Orchestrations view of BizTalk Server Administration Console to refresh and verify
Pressing <Enter> now will stop the orchestration using ExplorerOM...
=== Please wait, attempting to stop the orchestration... ===
Orchestration Status should now be "Stopped"
Press F5 in the Orchestrations view of BizTalk Server Administration Console to refresh and verify
Pressing <Enter> now will unenlist the orchestration using ExplorerOM...
=== Please wait, attempting to unenlist the orchestration... ===
Orchestration Status should now be "Unenlisted"
Press F5 in the Orchestrations view of BizTalk Server Administration Console to refresh and verify
Pressing <Enter> now will unbind the orchestration using ExplorerOM...
=== Please wait, attempting to unbind the orchestration... ===
Orchestration Status should now be "Unenlisted(Unbound)"
Press F5 in the Orchestrations view of BizTalk Server Administration Console to refresh and verify
Pressing <Enter> now will re-bind the orchestration using ExplorerOM...
=== Please wait, attempting to re-bind the orchestration... ===
Orchestration Status should now be "Unenlisted"
Press F5 in the Orchestrations view of BizTalk Server Administration Console to refresh and verify
Pressing <Enter> now will enlist the orchestration using ExplorerOM...
=== Please wait, attempting to enlist the orchestration... ===
Orchestration Status should now be "Stopped"
Press F5 in the Orchestrations view of BizTalk Server Administration Console to refresh and verify
Pressing <Enter> now will restart the orchestration using ExplorerOM...
=== Please wait, attempting to restart the orchestration... ===
Orchestration Status should now be "Started"
Press F5 in the Orchestrations view of BizTalk Server Administration Console to refresh and verify
Vedere anche
Amministrazione-ExplorerOM (BizTalk Server cartella esempi)HelloWorld (BizTalk Server esempio)