Ich habe ein seltsames Problem. Es wird versucht, ein benutzerdefiniertes PSObject mit einer foreach-Schleife für die Eigenschaften zu erstellen., Sieht so aus, als wäre das nicht möglich
Im folgenden Beispiel:
1) Ich mache ein leeres Array $object1
2) Items ist ein Array,das Data1, Data2 <–im Grunde eine CSV, 1 String mit einem Komma
3) Ich erstelle ein neues psobject und splat die Eigenschaften, der Schlüssel ist das erste Element aus der Aufteilung und der Wert ist das zweite Element aus der Aufteilung.
4) Nachdem ich das neue Objekt erstellt habe, fordere ich Powershell auf, es wieder in das leere Array einzufügen.
# ()
# foreach ($item in $items){
# $Objekt2=New-Object psobject -Property @{
# $Daten.split(„,“) = $Daten.,split („,“)
# }
# $object1 += $Object2
# }
Nun zum seltsamen Teil, wenn Sie das Objekt | GM, erhalten Sie nur 1 Eigenschaftswert, nicht alles.
$object1 / GM
Typname: System.Management.Automatisierung.PSCustomObject
Name MemberType Definition
— —- —-
Gleich Methode bool Gleich (System.Objekt obj)
GetHashCode Methode int GetHashCode ()
GetType Methodentyp GetType ()
toString Methode string toString ()
ARCHIV NoteProperty System.String ARCHIVE=305.86
HINWEIS: Es wird nur 1 Eigenschaft gesetzt, Archive., Hier geht die gleiche Operation mit der foreach-Logik
$object / GM
TypeName: System.Management.Automatisierung.PSCustomObject
Name MemberType Definition
— —- —-
Gleich Methode bool Gleich (System.Objekt obj)
GetHashCode Methode int GetHashCode ()
GetType Methodentyp GetType ()
toString Methode string toString ()
ARCHIV NoteProperty System.String ARCHIVE=305.86
BACKUP NoteProperty System.String-SICHERUNG=3941.60
FULL_DBBACKUP NoteProperty System.String FULL_DBBACKUP=75.23
MIGRATION NoteProperty System.String MIGRATION=1903.,58
RECLAMATION NoteProperty System.String RECLAMATION=443.16
NoteProperty System ABRUFEN.String RETRIEVE=14.75
Theoretisch sollte die Foreach-Logik funktionieren. was wirklich seltsam ist, die foreach-Logik enthält die Eigenschaften, sie sind einfach nicht sichtbar, $object1.backup gibt einen Wert zurück, aber wie Sie im | GM sehen können, ist es einfach nicht sichtbar. Kann jemand erklären?