Messages représentés en tant que classes .NET
Cette approche implique d'abord la création d'une classe .NET définissant votre type de message. Cette classe doit comporter un constructeur par défaut sous peine que l'orchestration qui l'utilise ne procède pas à la compilation. Voici un exemple simple d'une telle classe :
using System;
using Microsoft.XLANGs.BaseTypes;
Using PropertyNamespace;
namespace NetClass
{
[Serializable]
public class MsgClass
{
public MsgClass()
{
StrField = "OK";
IntField = 1;
ShortField = 1;
}
[PropertyNamespace.ShortPropertyName]
public Int16 ShortField;
[PropertyAttribute(typeof(PropertyNamespace.StringPropertyName)]
[DistinguishedFieldAttribute()]
public String StrField;
[DistinguishedFieldAttribute()]
public int IntField;
}
}
Dans cet exemple, ShortField serait une propriété de type PropertyNamespace.ShortPropertyName et le type sous-jacent de la propriété devrait être Int16, le type de ShortField. StrField serait à la fois un champ distinctif et une propriété de type PropertyNamespace.StringPropertyName et le type sous-jacent de la propriété devrait être Chaîne, le type de StrField. Normalement, PropertyNamespace.StringPropertyName et PropertyNamespace.ShortPropertyName seraient créées à l'aide de l'Éditeur de schéma BizTalk sous forme de propriétés de schéma, et vous devriez référencer dans votre projet C# l'assembly qui contient les propriétés de schéma.
Notes
Dans le langage de programmation C#, la terminaison Attribut du nom des attributs étant facultative, vous pouvez l'omettre et utiliser DistinguishedField ou Property à la place Par exemple,
[Property(typeof(PropertyNamespace.StringPropertyName))]
[DistinguishedField]
public string StrField;
Une fois le type de message défini, il est très facile d'écrire du code dans l'orchestration qui créera un message de ce type. Dans une forme Construire un message , vous écrivez des expressions simples pour créer un nouveau message du type MsgClass indiqué ci-dessus, puis attribuez des valeurs aux champs qui sont attribués en tant que champs distingués (si vous souhaitez remplacer les valeurs par défaut). Notez que MyMsg est une variable de message d'orchestration dont le type est NetClass.MsgClass.
MyMsg = new NetClass.MsgClass();
MyMsg.StrField = "Changed Value";
MyMsg.IntField = 15;
Voir aussi
Messages représentés en tant que schémas XSD
Messages représentés en tant que XLANGMessage
Construction de messages dans le code utilisateur