Partager via


Promotion immobilière

La promotion des propriétés implique la promotion des nœuds Field Element ou Field Attribute dans un schéma afin de devenir des champs distincts ou des champs de propriété. Vous pouvez également promouvoir les nœuds d’enregistrement en tant que champs de propriété s’ils ont du contenu simple (propriété Type de contenu du nœud d’enregistrement définie sur SimpleContent). Cette section fournit des instructions pas à pas pour promouvoir des nœuds en tant que champs distingués ou en tant que champs de propriété.

Pour promouvoir un enregistrement (avec du contenu simple), un nœud Field Element ou Field Attribute en tant que champ de propriété, vous pouvez d’abord définir un type spécial de schéma appelé schéma de propriété. Les schémas de propriété définissent un ensemble non structuré de nœuds Field Element dans lesquels vous promouvez l’enregistrement (avec du contenu simple), l’élément Field ou les nœuds d’attribut de champ . Pour obtenir des instructions pas à pas pour créer un schéma de propriété, consultez Comment créer des schémas de propriété.

Vous pouvez également utiliser la fonctionnalité Promotion rapide , qui crée et met à jour automatiquement un schéma de propriété unique chaque fois que vous promouvez un nouveau nœud Field Element, Field Attribute ou Record (avec du contenu simple).

Remarque

Vous pouvez promouvoir un champ comme champ distingué et un champ de propriété.

Remarque

La fonctionnalité Promotion rapide modifie le schéma de propriété en insérant une nouvelle propriété avec le nom du nœud promu.

Important

Ne déplacez pas ou renommez un champ dans le schéma une fois que vous l’avez promu. Lorsque vous déplacez ou renommez un champ de schéma, l’Éditeur BizTalk ne met pas à jour le XPath définissant l’emplacement du champ promu.

Types de données XSD et CLR

Dans certains endroits, comme dans la promotion des propriétés, les types de données XSD sont promus en types de données CLR (Common Language Runtime). Le tableau suivant montre les types de données XSD qui peuvent être promus et les types de données CLR correspondants.

Type de données XSD Type de données CLR
anyURI Chaîne
Booléen Booléen
Octet sbyte
Date (Jour/Mois/Année) Date et heure
date et heure Date et heure
Décimal Décimal
Double Double
ENTITÉ Chaîne
Flotter Célibataire
gDay Date et heure
Mois Date et heure
gMonthDay Date et heure
Année Date et heure
gYearMonth Date et heure
ID Chaîne
IDREF Chaîne
Int Int32
Nombre entier Décimal
Langue Chaîne
Nom Chaîne
NCName Chaîne
negativeInteger Décimal
NMTOKEN Chaîne
entierNonNégatif Décimal
nonPositiveInteger Décimal
normalizedString Chaîne
Notation Chaîne
positiveInteger Décimal
QName Chaîne
Court Int16
Chaîne Chaîne
Heure Date et heure
Jeton Chaîne
octet non signé Octet
entier non signé UInt32
entier court non signé UInt16

Remarque

Le type de données XSD de base64Binary, duration, ENTITES, hexBinary, IDREFS, long, NMTOKENS et unsignedLong n'est pas pris en charge pour la promotion.

Limitations de la promotion des propriétés

Lors de la promotion des propriétés, tenez compte des éléments suivants :

  • Les propriétés promues sont limitées à 256 caractères de longueur, tandis que les propriétés écrites n’ont aucune limitation de longueur.

  • Les propriétés promues sont utilisées dans le routage des messages et sont limitées en taille pour des raisons d’efficacité dans la comparaison et le stockage. Bien que les propriétés écrites n’aient pas de limites strictes sur la taille, l’utilisation de valeurs excessivement volumineuses dans le contexte aura un impact sur les performances, car ces valeurs doivent toujours être traitées et transmises avec le message. Les champs distingués sont les exemples de propriétés écrites.

  • Les nœuds d’enregistrement ne peuvent jamais être promus comme champs distingués.

  • Les propriétés promues sont limitées aux éléments/attributs non répétitifs.

  • Ne pas attribuer les champs appartenant au même nœud racine à la même propriété. Ces promotions produisent des erreurs de compilation ou de déploiement.

  • Dans un contexte de message, certaines propriétés ne sont pas disponibles, car elles ne sont pas promues. La propriété BTS.ReceiveLocationName est une propriété de ce type. Si vous pouvez ajouter un nouveau schéma de propriété ou un nouveau projet BizTalk Server à votre développement, il est possible d’accéder à cette propriété à partir d’une orchestration.

    Les valeurs de propriété sont identifiées par l’espace de noms cible de propriété et le nom de propriété. L’exemple suivant montre comment accéder à l’emplacement de réception dans le code.

    string receiveLocationName = pInMsg.Context.Read("ReceiveLocationName", sysNamespace);

Dans cette section