Flash info

"La connaissance ce n’est point la possession de la vérité, mais d’un langage cohérent."

Antoine de Saint Exupéry (1900-1944)

 
Accueil arrow Articles / Tutoriaux arrow Comment savoir si un objet est une collection ?
Comment savoir si un objet est une collection ?
Écrit par Laurent Dardenne   
23-06-2008

Je viens de passer quelque temps à rechercher une solution, voici comment on peut faire :

#Est-ce que l'object est une collection ? 
#(On teste si l'objet implémente l'interface IEnumerable)

PS > $Tab=@(1,2)
PS > $Tab -is [System.Collections.IEnumerable]
True

PS > $i=10
PS > $i -is [System.Collections.IEnumerable]
False

On peut donc ensuite effectuer un Foreach sur la collection sans problème.
Cela peut être utile, par exemple, dans un traitement utilisant le pipeline.

L'opérateur -is/-isnot permet d'interroger la classe de l'objet et les interfaces qu'il implémente.

Si vous souhaitez discuter de cette astuce, rendez-vous dans le forum dans ce fil de discussion.
Dernière mise à jour : ( 23-06-2008 )
 
© 2017 PowerShell-Scripting.com