Messaggi rappresentati come schemi XSD
Un'istanza XML dei modelli del tipo di messaggio XSD viene definita in fase di progettazione e quindi memorizzata su disco. In fase di esecuzione, un componente .NET preleva l'istanza XML dal disco e la restituisce come XmlDocument. Il codice dell'orchestrazione può assegnare questo risultato XmlDocument all'istanza del messaggio dichiarata nell'orchestrazione.
La forma Assegnazione messaggi ha una singola riga di codice:
MsgOut = CreateMsgHelper.Helper.GetXmlDocumentTemplate();
Il componente helper che crea il modello XmlDocument prevede un solo metodo statico:
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;
}
Vedere anche
Messaggi rappresentati come classi .NET
Messaggi rappresentati come XLANGMessage
Costruzione di messaggi in codice utente