ApplicationManager (BizTalk Server-Beispiel)
Im ApplicationManager-Beispiel wird veranschaulicht, wie eine BizTalk-Anwendung mithilfe der Verwaltungsobjekte gestartet oder beendet wird.
Voraussetzungen
Sie müssen über BizTalk Server Administratorrechte verfügen, um die administrativen Objekte in diesem Beispiel verwenden zu können.
Für die Skriptausführung erfordert das Windows PowerShell-Skript die Windows PowerShell-Ausführungsrichtlinie. Weitere Informationen finden Sie unter about_Execution_Policies.
Ziel des Beispiels
In diesem Beispiel wird die Verwendung der BtsCatalogExplorer - und Application-Klassen aus dem Microsoft.BizTalk.ExplorerOM-Namespace veranschaulicht, um eine bereitgestellte BizTalk-Anwendung zu starten und zu beenden. Das Beispiel ist in Microsoft Visual C# geschrieben. Ein Windows PowerShell-Beispielskript ist ebenfalls Bestandteil dieses Themas. Mit dem Beispiel werden die folgenden Vorgänge veranschaulicht:
Herstellen einer Verbindung mit der BizTalk Management-Datenbank mithilfe der BtsCatalogExplorer-Klasse .
Suchen einer Anwendung instance aus BtsCatalogExplorer basierend auf dem Anwendungsnamen.
Ausgeben eines Befehls zum Starten oder Beenden einer Anwendung.
Speicherort dieses Beispiels
Das Beispiel ist im folgenden SDK-Verzeichnis gespeichert:
<Beispielpfad>\Admin\ExplorerOM\ApplicationManager
In der folgenden Tabelle werden die Dateien in diesem Beispiel samt Zweck beschrieben.
Datei(en) | BESCHREIBUNG |
---|---|
Program.cs | Visual C#-Quelldatei für Vorgänge, die in diesem Beispiel veranschaulicht werden. |
ApplicationManager.sln, ApplicationManager.csproj, ApplicationManager.suo | Die Projektmappen- und Projektdateien für das Beispiel. |
Erstellen und Ausführen dieses Beispiels
Erstellen dieses Beispiels
Öffnen Sie in Visual Studio die Projektmappendatei ApplicationManager.sln.
Klicken Sie im Menü Erstellen auf Projektmappe erstellen.
Dieses Beispiel ausführen
Öffnen Sie ein Befehlsfenster, und navigieren Sie zum folgenden Ordner:
<Beispielpfad>\Admin\ExplorerOM\ApplicationManager\bin\Debug
Führen Sie die Datei ApplicationManager.exe aus, und stellen Sie die beiden folgenden geordneten Befehlszeilenargumente zur Verfügung:
<start|stop> Das erste Argument ist der Vorgang, der für die bereitgestellte Anwendung ausgeführt werden soll.
<ApplicationName> Second-Argument ist der Name der bereitgestellten Anwendung.
Beispiel:
ApplicationManager.exe stop MyBizTalkApp
Wenn das Beispiel mit unzureichenden Befehlszeilenparametern ausgeführt wird, wird die Verwendungssyntax angezeigt. Beispiel:
Usage: ApplicationManager <start|stop> <Application Name> Where: <Application Name> = The name of the application that needs to be changed Example: ApplicationManager start Application1
Beispiel für ein Windows PowerShell-Skript
Das folgende Windows PowerShell Skriptfragment kann verwendet werden, um die gleichen Features der ExplorerOM-Klassen zu veranschaulichen:
#=== Make sure the ExplorerOM assembly is loaded ===#
[void] [System.reflection.Assembly]::LoadWithPartialName("Microsoft.BizTalk.ExplorerOM")
#=== Connect the BizTalk Management database ===#
$Catalog = New-Object Microsoft.BizTalk.ExplorerOM.BtsCatalogExplorer
$Catalog.ConnectionString = "SERVER=.;DATABASE=BizTalkMgmtDb;Integrated Security=SSPI"
#=== Loop through applications in the catalog trying to find a name match ===#
foreach($app in $Catalog.Applications)
{
if ($($app.Name) -ieq $args[1])
{
#=== The first command-line argument should be "start" or "stop" ===#
if ($args[0] -ieq "start")
{
Write-Host `r`nIssuing start command to $app.Name...`r`n
$app.Start([Microsoft.BizTalk.ExplorerOM.ApplicationStartOption] "StartAll")
$Catalog.SaveChanges()
}
if ($args[0] -ieq "stop")
{
Write-Host `r`nIssuing stop command to $app.Name...`r`n
$app.Stop([Microsoft.BizTalk.ExplorerOM.ApplicationStopOption] "StopAll")
$Catalog.SaveChanges()
}
}
}
Das Skript erwartet die gleichen Befehlszeilenargumente wie das Visual C#-Beispiel. Nachfolgend sehen Sie ein Beispiel für die Ausführung des Windows PowerShell-Skripts zum Starten einer bereitgestellten BizTalk-Anwendung:
PS C:\> .\ApplicationManager.ps1 start MyBizTalkApp
Issuing start command to MyBizTalkApp ...