Constructing Messages

You construct a message any time that you introduce a message into your orchestration, either by receiving it or by assigning values to a message variable. Any message that you construct must have a message type, so that the runtime engine has a complete description of the object that it is working with. The multi-part message type can be user-defined, it can be a .NET class, or it can be a schema. You can construct messages in various ways: you can invoke a .NET class to create a message, assign one message to another, or use a transform to map certain values within a message to values within another message. Messages are also constructed by a receive action or when your orchestration accepts a message as a parameter.


A multi-part message type does not necessarily contain multiple parts; it might contain just one.


Messages are immutable in BizTalk; that is, once you have constructed it, you cannot modify the original. If you need to make a change, you must construct a new copy of the message and assign values to it appropriately.

In This Section

How to Configure the Construct Message Shape

How to Configure the Message Assignment Shape

How to Configure the Transform Shape

Message References in Message Assignment Shape

Message References in User Code

Using XPaths in Message Assignments

Using Non-Canonical XPaths in Message Assignments

Constructing Messages in User Code

Appending Nodes to Messages in User Code

See Also

Using Messages in Orchestrations