You can dynamically load and call maps from an orchestration like so:
// dynamicMapType is declared 'System.Type'
dynamicMapType = Helper.GetMapType(MessageTypeName);
// Call the transform given by the object type, pass in a message
transform(msgOut) = dynamicMapType(msgIn);
Here's an example to get a map object type. I put mine in a C# helper assembly.
public static System.Type GetMapType(string MessageType)
{
System.Type typ = null;
switch (MessageType.ToUpper())
{
case "ONE":
typ = System.Type.GetType("AssemblyQualifiedName_from_gacutil");
break;
default:
throw new SystemException("Could not determine map transform type '" + MessageType + "'");
}
if (typ == null)
throw new SystemException("Could not load map transform type '" + MessageType + "'");
return typ;
}