Question [Tutoriel] Les objets personnalisés sous PS
- Laurent Dardenne
- Auteur du sujet
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 68
il y a 17 ans 6 mois #2796
par Laurent Dardenne
Tutoriels PowerShell
[Tutoriel] Les objets personnalisés sous PS a été créé par Laurent Dardenne
Voici un tutoriel sur
La création de membres d'objet synthétiques sous PowerShell
Si vous avez des remarques et/ou des questions n'hésitez pas.
A voir sur le sujet :
github.com/PowerShell/PowerShell/issues/11171
Message édité par: Laurent Dardenne, à: 12/04/20 12:23
La création de membres d'objet synthétiques sous PowerShell
Si vous avez des remarques et/ou des questions n'hésitez pas.
A voir sur le sujet :
github.com/PowerShell/PowerShell/issues/11171
Message édité par: Laurent Dardenne, à: 12/04/20 12:23
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Auteur du sujet
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 68
il y a 17 ans 1 mois #4124
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:[Tutoriel] Les objets personnalisés sous PS
Pour info la gestion des membres sur une hashtable est légérement buggé, en V1 en tout cas :
[code:1]
L=1|Select
$L=$L|add-member -membertype Scriptproperty -name DataFile -value {\"Test\"} -SecondValue {Throw \"DataFile is a read only property.\"} -pass
$L.DataFile=\"T\"
#exception
#La gestion d'un ScriptProperty ne fonctionne pas
$ht = New-Object HashTable
$ht.Filed=\"value\"
add-member Scriptproperty DataFile -value {\"Test\"} -SecondValue {Throw \"DataFile is a read only property.\"} -input $ht
$ht.DataFile=\"T\"
#pas d'exception.
$ht.Keys
#Datafile est une clé et un membre, mais il est inacessible car la clé est prioritaire !
add-member NoteProperty isDefault ($true) -input $ht
$ht.isDefault
#$true
$ht.Keys
# pour corriger ce pb utiliser un membre de type scriptmethod ou noteproperty
#pb connu sur msconnect
$table = @{test=\"This is a test\";exam=\"this is an exam\";defense=\"defend your thesis\"}
Add-Member -in $table NoteProperty Quiz \"Surprise, hope you're ready!\"
$table.Quiz # It's not there! There is NO OUTPUT
Add-Member -in $table NoteProperty Quiz \"Surprise, hope you're ready!\"
$table.Quiz # This time it works ...
#pour ce dernier pb faire
$table= New-Object HashTable
$table.test=\"This is a test\"
$table.exam=\"this is an exam\"
$table.defense=\"defend your thesis\"
Add-Member -in $table NoteProperty Quiz \"Surprise, hope you're ready!\"
$table.Quiz # This time it works ...
Add-Member -in $table NoteProperty Quiz \"Surprise, hope you're ready!\"
$table.Quiz # This time it works ...
[/code:1]
[edit]
On doit utiliser l'accès suivant :
[code:1]$ht.psextended.datafile [/code:1]
Message édité par: Laurent Dardenne, à: 21/02/09 15:47<br><br>Message édité par: Laurent Dardenne, à: 25/04/10 15:38
[code:1]
L=1|Select
$L=$L|add-member -membertype Scriptproperty -name DataFile -value {\"Test\"} -SecondValue {Throw \"DataFile is a read only property.\"} -pass
$L.DataFile=\"T\"
#exception
#La gestion d'un ScriptProperty ne fonctionne pas
$ht = New-Object HashTable
$ht.Filed=\"value\"
add-member Scriptproperty DataFile -value {\"Test\"} -SecondValue {Throw \"DataFile is a read only property.\"} -input $ht
$ht.DataFile=\"T\"
#pas d'exception.
$ht.Keys
#Datafile est une clé et un membre, mais il est inacessible car la clé est prioritaire !
add-member NoteProperty isDefault ($true) -input $ht
$ht.isDefault
#$true
$ht.Keys
# pour corriger ce pb utiliser un membre de type scriptmethod ou noteproperty
#pb connu sur msconnect
$table = @{test=\"This is a test\";exam=\"this is an exam\";defense=\"defend your thesis\"}
Add-Member -in $table NoteProperty Quiz \"Surprise, hope you're ready!\"
$table.Quiz # It's not there! There is NO OUTPUT
Add-Member -in $table NoteProperty Quiz \"Surprise, hope you're ready!\"
$table.Quiz # This time it works ...
#pour ce dernier pb faire
$table= New-Object HashTable
$table.test=\"This is a test\"
$table.exam=\"this is an exam\"
$table.defense=\"defend your thesis\"
Add-Member -in $table NoteProperty Quiz \"Surprise, hope you're ready!\"
$table.Quiz # This time it works ...
Add-Member -in $table NoteProperty Quiz \"Surprise, hope you're ready!\"
$table.Quiz # This time it works ...
[/code:1]
[edit]
On doit utiliser l'accès suivant :
[code:1]$ht.psextended.datafile [/code:1]
Message édité par: Laurent Dardenne, à: 21/02/09 15:47<br><br>Message édité par: Laurent Dardenne, à: 25/04/10 15:38
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.048 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Contributions à la communauté
- [Tutoriel] Les objets personnalisés sous PS