Freigeben über


Instanziieren eines Adapters durch BizTalk Server

Beim Starten des BizTalk-Diensts werden alle Empfangsadapter instanziiert, vorausgesetzt, sie verfügen über einen oder mehrere konfigurierte und aktive Empfangsspeicherorte. In den Standardeinstellungen wird ein Sendeadapter erst instanziiert, wenn die erste zu sendende Nachricht von der Messaging-Engine unter Verwendung dieses Adapters aus der Warteschlange entfernt wird. (Dies wird manchmal als "verzögerte Erstellung" bezeichnet.) Wenn Sie jedoch einen Sendeadapter beim Starten des Diensts instanziieren müssen, können Sie die InitTransmitterOnServiceStart-Adapterfunktion verwenden. Dadurch wird die Messaging-Engine angewiesen, den Sendeadapter beim Dienststart zu erstellen und nicht die "Lazy Creation" der Standardeinstellung zu verwenden. Durch die "Lazy Creation"-Standardmethode werden die Systemressourcen geschont, wenn Adapter nicht an Endpunkten konfiguriert sind.

Für die Erstellung eines benutzerdefinierten Adapters sollten Sie verwalteten Code verwenden. Es können jedoch auch systemeigene COM-Komponenten verwendet werden. Für COM-Komponenten wird der Adapter auf normale Weise mithilfe von CoCreateInstance instanziiert.

Für verwalteten Code müssen Sie den . NET-Typ in der Konfigurationsdatei angeben. Der Assemblypfad ist optional.

Die folgenden Bereitstellungsoptionen sind möglich:

.NET-Typ Assemblypfad Methode zur Bereitstellung der Assembly
Angegeben Nicht angegeben Kopieren der Assembly mit XCopy in das Produktverzeichnis oder dessen Unterverzeichnis mit dem gleichen Namen wie die Assembly
Angegeben Nicht angegeben Assembly für den globalen Assemblycache (GAC)
Angegeben Angegeben Kopieren der Assembly mit Copy in das angegebene Verzeichnis

Tipp zur Problembehandlung: Wenn Sie einen Adapter mit verwaltetem Code erstellen und die Erstellung fehlschlägt, verwenden Sie das Tool fuslogvw.exe, um zu ermitteln, ob Verweise auf Assemblys vorhanden sind, die nicht aufgelöst werden können. Dies ist ein häufig auftretender Fehler.

In der folgenden Abbildung ist die Logik für das Erstellen von Adaptern, abhängig von der angegebenen Konfiguration, dargestellt:

Abbildung, die die Logik zum Erstellen von Adaptern abhängig von der angegebenen Konfiguration zeigt.

In der folgenden Tabelle finden Sie ein Beispiel für die Konfiguration eines Empfangsadapters und Möglichkeiten für die Konfiguration der Laufzeitassembly.

Methode zur Bereitstellung der Assembly InboundTypeName InboundAssemblyPath
Angeben eines Speicherorts für die Assembly Microsoft.Samples.MyReceiveAdapter C:\MyAdapter\MyAdapter.dll
Angeben des .NET-Typs (einschließlich des öffentlichen Schlüssels, der Version und der Kulturinformationen) Microsoft.Samples.MyReceiveAdapter, MyReceiveAdapter, Version=1.0.2510.24622, Culture=neutral, PublicKeyToken=077cf886a2d1c020
GAC-Assembly Microsoft.Samples.MyReceiveAdapter, MyReceiveAdapter, Version=1.0.2510.24622, Culture=neutral, PublicKeyToken=077cf886a2d1c020