External assembly not updated automatically with Scripting Functoids.

Posted: November 1, 2010  |  Categories: Maps Uncategorized

While using script Functoids to call a method in an external assembly, care should be taken with the Assembly version and PublicKeyToken.

 These values will be hardcoded in the map for that particular script functoid.

 For eg: as given below.

 <Script Language=”ExternalAssembly” Assembly=”MyAssembly, Version=, Culture=neutral, PublicKeyToken=352635678e269c8da” Function=”Insert” AssemblyPath=”..\..\bin\Debug\MyAssembly.dll” />

 If the source dll version or PublicKeyToken is modified, script functoid canonot automatically refere to the new version of the dll and it still refers to the old version of the dll.

 In this situation either of the below approaches should be followed to avoid Transformation Failure. 

  1. Make sure that the old version of the dll is available in the GAC.
  2. Modify the script functoid to refer to a new version of the dll.

 This can be done in 2 ways.

i)   Modify each script funtoid to point to a new assembly.

ii)  If you have many scripting Functoid using the same assembly, then Right Click on the Map and open with XML Editor. Search for the assembly and update the Version.

 Post your comments if any one has an alternate solution.

BizTalk Server

Over 650+ customers across
30+ countries depend on BizTalk360

Learn More

Operate efficiently with enterprise-grade Azure monitoring,
tracing, remediation & governance in one platform

Learn More

Back to Top