Delen via


Get-TypeData

Haalt de uitgebreide typegegevens op in de huidige sessie.

Syntaxis

Get-TypeData
   [[-TypeName] <String[]>]
   [<CommonParameters>]

Description

De Get-TypeData cmdlet haalt de uitgebreide typegegevens op in de huidige sessie. Dit omvat typegegevens die aan de sessie zijn toegevoegd door Types.ps1xml bestand en dynamische typegegevens die zijn toegevoegd met behulp van de parameter van de Update-TypeData-cmdlet.

U kunt de uitgebreide typegegevens gebruiken die Get-TypeData retourneert om de typegegevens in de sessie te onderzoeken en naar de Update-TypeData en Remove-TypeData cmdlets te verzenden.

Uitgebreide typegegevens voegt eigenschappen en methoden toe aan objecten in PowerShell. U kunt de toegevoegde eigenschappen en methoden op dezelfde manier gebruiken als de eigenschappen en methoden die zijn gedefinieerd in het objecttype. Houd er bij het schrijven van scripts echter rekening mee dat de toegevoegde eigenschappen en methoden mogelijk niet aanwezig zijn in elke PowerShell-sessie.

Zie about_Types.ps1xmlvoor meer informatie over Types.ps1xml bestanden. Zie Update-TypeDatavoor meer informatie over dynamische typegegevens die door de Update-TypeData cmdlet worden toegevoegd.

Deze cmdlet is geïntroduceerd in Windows PowerShell 3.0.

Voorbeelden

Voorbeeld 1: alle uitgebreide typegegevens ophalen

In dit voorbeeld worden alle uitgebreide typegegevens in de huidige sessie opgehaald.

Get-TypeData

Voorbeeld 2: Typegegevens ophalen op naam

In dit voorbeeld worden alle typegegevens opgehaald in de huidige sessie waarvan de naam is gekwalificeerd met 'System.IO'.

Get-TypeData -TypeName System.IO.*

TypeName                Members
--------                -------
System.IO.DirectoryInfo {[Mode, System.Management.Automation.Runspaces.CodePropert…
System.IO.FileInfo      {[Mode, System.Management.Automation.Runspaces.CodePropert…

Voorbeeld 3: Het scriptblok ophalen waarmee een eigenschapswaarde wordt gemaakt

In dit voorbeeld wordt het scriptblok opgehaald waarmee de waarde van de eigenschap EventID van EventLogEntry-objecten wordt gemaakt.

(Get-TypeData *EventLogEntry*).Members.EventID

GetScriptBlock                     SetScriptBlock     IsHidden Name
--------------                     --------------     -------- ----
$this.get_EventID() -band 0xFFFF                         False EventID

Voorbeeld 4: Het scriptblok ophalen waarmee een eigenschap voor een opgegeven object wordt gedefinieerd

In dit voorbeeld wordt het scriptblok opgehaald dat de eigenschap DateTime van System.DateTime-objecten in PowerShell definieert.

(Get-TypeData -TypeName System.DateTime).Members["DateTime"].GetScriptBlock
if ((& { Set-StrictMode -Version 1; $this.DisplayHint }) -ieq  "Date") {
    "{0}" -f $this.ToLongDateString()
}
elseif ((& { Set-StrictMode -Version 1; $this.DisplayHint }) -ieq "Time") {
    "{0}" -f  $this.ToLongTimeString()
}
else {
    "{0} {1}" -f $this.ToLongDateString(), $this.ToLongTimeString()
}

De opdracht gebruikt de Get-TypeData cmdlet om de uitgebreide typegegevens op te halen voor het System.DataTime type. Met de opdracht wordt de eigenschap Leden van het TypeData--object opgehaald.

De eigenschap Leden bevat een hash-tabel met eigenschappen en methoden die worden gedefinieerd door uitgebreide typegegevens. Elke sleutel in de hashtabel Leden is een eigenschap of methodenaam en elke waarde is de definitie van de eigenschap of methodewaarde.

Met de opdracht wordt de DateTime--sleutel opgehaald in leden en de eigenschapswaarde GetScriptBlock.

De uitvoer toont het scriptblok waarmee de waarde wordt gemaakt van de eigenschap DateTime van elk System.DateTime--object in PowerShell.

Parameters

-TypeName

Hiermee geeft u typegegevens op als een matrix alleen voor de typen met de opgegeven namen. Standaard worden Get-TypeData alle typen in de sessie opgehaald.

Typ namen of een naampatronen. Volledige namen of naampatronen met jokertekens zijn vereist, zelfs voor typen in de systeemnaamruimte. Jokertekens worden ondersteund en de parameternaam TypeName is optioneel. U kunt ook namen van pijptypen om te Get-TypeData.

Type:String[]
Position:0
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:True

Invoerwaarden

String

U kunt tekenreeksen met typenamen naar deze cmdlet doorsluizen.

Uitvoerwaarden

TypeData

Notities

Get-TypeData alleen de uitgebreide typegegevens in de huidige sessie ophaalt. Het krijgt geen uitgebreide typegegevens die zich op de computer bevinden, maar is niet toegevoegd aan de huidige sessie, zoals uitgebreide typen die zijn gedefinieerd in modules die niet zijn geïmporteerd in de huidige sessie.