由于 BizTalk Server 处理消息的方式,因此不能直接将新节点追加到现有消息。 相反,必须克隆现有消息,如下所示:
myXMLDoc = myExistingMsg; // just holding a reference
// use CloneNode to make a fresh copy of myModifiedMsg
myXMLDoc = (XMLDocument)myXMLDoc.CloneNode;
myXMLDoc.append myNode; // here is the node we want to append
//update temp message
myModifiedMsg = myXMLDoc;
现在您可以使用 myModifiedMsg,其中包含了新节点。 如果出于某种原因想要重复使用 myExistingMsg,可以构造一个新的(空)副本,并将 myModifiedMsg 分配给它。
myExistingMsg = myModifiedMsg;