Compartir a través de


Mensajes representados como esquemas XSD

Una instancia XML de plantilla del tipo de mensaje XSD se define en el momento del diseño y luego se guarda en el disco. En tiempo de ejecución, un componente .NET toma el XML del disco y lo devuelve como XmlDocument. El código de orquestación puede asignar este resultado XmlDocument a la instancia del mensaje declarado en la orquestación.

La forma Asignación de mensajes tiene una sola línea de código:

MsgOut = CreateMsgHelper.Helper.GetXmlDocumentTemplate();  

El componente Asistente que crea el XmlDocument tiene un solo método estático:

private static XmlDocument _template = null;  
private static object _sync = new object();  
private static String LOCATION = @"C:\MyTemplateLocation\MyMsgTemplate.xml";  
  
public static XmlDocument GetXmlDocumentTemplate()  
{  
   XmlDocument doc = _template;  
   if (doc == null)  
   {  
      // Load the doc template from disk.  
      doc = new XmlDocument();  
      XmlTextReader reader = new XmlTextReader(LOCATION);  
      doc.Load(reader);  
  
      // Synchronize assignment to _template.  
      lock (_sync)  
      {  
         XmlDocument doc2 = _template;  
         if (doc2 == null)  
         {  
            _template = doc;  
         }  
         else  
         {  
            // Another thread beat us to it.  
            doc = doc2;  
         }  
      }  
   }  
  
   // Need to explicitly create a clone so that we are not  
   // referencing the same object statically held by this class.  
   doc = (XmlDocument) doc.CloneNode(true);  
   return doc;  
}  

Consulte también

Mensajes representados como clases .NET
Mensajes representados como XLANGMessage
Construcción de mensajes en código de usuario