Données structurées

 

Sapplique à :Exchange Server 2013

Chaque action que vous exécutez dans l'environnement de ligne de commande Exchange Management Shell doit être effectuée dans le contexte d'objets. L'environnement Exchange Management Shell utilise des collections d'informations structurées appelées objets. Ces objets représentent des éléments dans des sources de données hiérarchiques. Lorsque vous appelez une cmdlet, un ou plusieurs objets structurés fortement typés sont renvoyés. Les objets comprennent des informations sur un élément et sur la structure de l'objet. L'objet fait également office de proxy pour l'élément réel. Par exemple, lorsque vous accédez à un fichier à partir de l'environnement de ligne de commande Exchange Management Shell, vous ne travaillez pas avec le fichier proprement dit, mais avec l'objet qui représente ce fichier.

Du fait que l'environnement de ligne de commande Exchange Management Shell utilise des objets, il présente un avantage par rapport aux interfaces de commande traditionnelles. Les interfaces de commande classiques prennent toujours en charge la redirection de la sortie d'une commande vers une autre sous la forme d'un flux textuel. Cette méthode présente des inconvénients, car l'analyse de texte doit être rigoureusement contrôlée, généralement par un codage, afin d'éviter tout comportement inattendu. Grâce aux objets, l'environnement Exchange Management Shell vous permet de choisir plus facilement les données avec lesquelles vous souhaitez travailler, et d'utiliser des méthodes prédéfinies pour utiliser et manipuler ces données. Vous consacrez moins de temps à récupérer les données et plus de temps à les utiliser.

L'environnement de ligne de commande Exchange Management Shell utilise ce modèle d'objet pour transmettre des informations d'une commande à une autre à l'aide du pipelining. Ceci permet d'éviter les problèmes causés par l'analyse textuelle dans d'autres interfaces de commande, car les données qu'utilise l'environnement Exchange Management Shell possèdent une structure définie et sont interprétées en fonction du modèle d'objet.

Pour plus d'informations sur le pipelining, voir Traitement en pipeline.

Un objet se compose de trois types de données : le type de l'objet, ses propriétés et ses méthodes.

La nature des données d'un objet fournit des informations détaillées sur le type d'objet dont il s'agit. Par exemple, un objet qui représente une boîte aux lettres est un objet Mailbox. Un objet qui représente un fichier est un objet FileInfo. Tous les objets ont un type et un espace de noms prédéfinis distincts que l'environnement Exchange Management Shell peut traiter.

Pour savoir quels types d’objets sont acceptés et renvoyés par les cmdlets, voir Types d’entrée et de sortie de la cmdlet.

Une propriété est constituée de données associées à un objet, qui spécifient un état particulier de celui-ci. Par exemple, un objet Mailbox inclut la propriété EmailAddresses. Cette propriété d'objet représente la valeur de l'attribut ProxyAddresses réel sur les comptes d'utilisateurs Active Directory à extension messagerie. Il s'agit de l'élément réel représenté par l'objet Mailbox.

Les informations sur les propriétés associées à un objet incluent l'état actuel et la définition de chaque propriété. Il s'agit du nom de la propriété et du type de données qu'elle peut accepter : entier, booléen, chaîne, etc.

Une méthode est un ensemble d'instructions définissant une action spécifique que vous pouvez appliquer à un objet. Les méthodes sont définies selon le type d'objet. Par exemple, pour un objet de type System.String, ou String, il existe plusieurs méthodes qui vous permettent de manipuler la chaîne. L'utilisation de la méthode ToUpper() sur une chaîne vous permet de convertir tous les caractères de la chaîne en majuscules. Certaines méthodes n'acceptent pas les arguments, alors que d'autres imposent l'utilisation d'arguments. Cela dépend de la méthode que vous utilisez.

Pour appeler des méthodes disponibles pour un objet, spécifiez la méthode que vous voulez utiliser après la variable dans laquelle l'objet est stocké. La variable et la méthode sont séparées par un point. L'exemple suivant stocke une chaîne dans la variable $Example, puis appelle la méthode ToUpper() afin de convertir la chaîne en majuscules.

$Example = "This is a string"
$Example.ToUpper()
THIS IS A STRING.

Notez que si vous exécutez de nouveau $Example, la chaîne proprement dite n'est pas modifiée.

$Example
This is a string.

Pour mettre à jour la variable avec la sortie de la méthode, vous devez affecter la sortie à la variable, comme indiqué dans l'exemple suivant.

$Example = "This is a string"
$Example = $Example.ToUpper()

Lorsque vous exécutez $Example, la chaîne est convertie en majuscules dans la variable.

$Example
THIS IS A STRING.

Si un objet contient des propriétés, ces dernières peuvent également disposer de leurs propres méthodes. Tout comme pour les objets, le type de la propriété définit les méthodes disponibles. Le type de propriété ne correspond pas nécessairement au type d'objet. Pour appeler une méthode sur une propriété d'objet, vous utilisez la même syntaxe que lors de l'appel d'une méthode d'objet, mais vous incluez la propriété avec l'objet. Par exemple, un objet connecteur d'envoi dispose d'une propriété appelée MaxMessageSize, qui est de type ByteQuantifiedSize. L'une des méthodes pour le type ByteQuantifiedSize est ToMB(). La commande suivante affiche la valeur stockée dans MaxMessageSize.

$Connector = Get-ReceiveConnector "From Internet"
$Connector.MaxMessageSize
35 MB (36,700,160 bytes)

Si vous appelez à présent la méthode ToMB(), la valeur stockée dans MaxMessageSize s'affiche en mégaoctets.

$Connector.MaxMessageSize.ToMB()
35
 
Afficher: