Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

XmlMessageFormatter constructeur (Type[])

 

Date de publication : novembre 2016

Initialise une nouvelle instance de la XmlMessageFormatter classe, en définissant des types cibles passés en tant que tableau de types d’objet.

Espace de noms:   System.Messaging
Assembly:  System.Messaging (dans System.Messaging.dll)

public XmlMessageFormatter(
	Type[] targetTypes
)

Paramètres

targetTypes
Type: System.Type[]

Tableau de type Type qui spécifie le jeu de types possibles qui seront désérialisés par le formateur à partir du message fourni.

Exception Condition
ArgumentNullException

Le paramètre targetTypes a la valeur null.

Les constructeurs avec des paramètres de type de cible sont fréquemment utilisés lors de la lecture de la file d’attente. Lors de l’écriture, il n’est pas nécessaire de spécifier les types de cibles.

Cette surcharge de la XmlMessageFormatter constructeur définit le TargetTypes propriété les valeurs du tableau passé dans le targetTypes paramètre. Définition de cette propriété permet un MessageQueue en utilisant cette XmlMessageFormatter instance pour lire les messages contenant des objets de types donnés.

À la fois les TargetTypeNames et TargetTypes propriétés indiquent au formateur les schémas auxquels correspondre lors de la désérialisation d’un message. Cela permet au formateur d’interpréter le corps du message.

L’instance sérialisée dans le corps du message doit correspondre à un des schémas représentés dans le tableau de types. Lorsque vous lisez le message à l’aide du Receive (méthode), la méthode crée un objet de type correspondant au schéma identifié et lit le corps du message dans celui-ci.

Une seule des deux propriétés doit être définie lors de la lecture de la file d’attente, mais vous pouvez définir à la fois. L’ensemble de types est l’ensemble combiné des deux propriétés. Le choix de l’application à utiliser est spécifique à votre application. Si le corps du message contient un type dont le schéma ne correspond pas à un des types dans le tableau pour des propriétés, une exception sera levée au moment de la lecture.

Lorsque vous spécifiez TargetTypes plutôt que TargetTypeNames, existence du type est vérifiée au moment de la compilation plutôt que des temps de lecture, ce qui réduit le risque d’erreur. TargetTypeNames nécessite que chaque entrée soit qualifiée complète, en spécifiant son nom d’assembly. En outre, lorsque vous travaillez avec plusieurs versions simultanément, le numéro de version doit également être ajouté pour le nom du type cible.

Lorsque vous utilisez TargetTypes, vous pouvez ajouter chaque objet (par exemple, MyClass) à la liste de la manière illustrée par le code c# suivant.

TargetTypes = new Type[]{typeof(MyClass)}

.NET Framework
Disponible depuis 1.1
Retour au début
Afficher: