Developing own Custom Functoid for BizTalk

Eigene Functoide für den BizTalk zu entwickeln ist ziemlich easy. Die Dokumentation mit den Beispielen ist OK und ausreichend. Trotzdem gibt es ein paar Ding...

Eigene Functoide für den BizTalk zu entwickeln ist ziemlich easy. Die Dokumentation mit den Beispielen ist OK und ausreichend.

Trotzdem gibt es ein paar Dinge die man im Eifer des Gefechtes schnell mal übersieht.

  1. Das Assembly mit den Functoiden braucht eine GUID. Diese einfach per Attribut [assembly: Guid("…")] in die AssemblyInfo.cs einbinden.
  2. Das Assembly in den GAC kopieren.
  3. Das Assembly ins Verzeichnis “Microsoft BizTalk Server 2004/Developer Tools/Mapper Extensions” kopieren.

Typische Fehlermeldung

Vergisst man letzteres kommt es beim Testen einer Map zu einer Fehlermeldung:



Exception Caught:

Mapper Compiler: Functoid not found: guid ({..})

with functoid id (..).

Automatisierungen mittels Post-Build-Events

Punkte 2.) und 3.) lassen sich gut über Post-Build-Events realisieren



copy $(TargetPath) "C:/Program Files/Microsoft BizTalk Server 2006/Developer Tools/Mapper Extensions"

"C:/Program Files/Microsoft Visual Studio 8/SDK/v2.0/Bin/gacutil" -i $(TargetPath)