Update-TypeData
Hiermee worden de uitgebreide typegegevens in de sessie bijgewerkt.
Syntaxis
Update-TypeData
[[-AppendPath] <String[]>]
[-PrependPath <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Update-TypeData
[-MemberType <PSMemberTypes>]
[-MemberName <String>]
[-Value <Object>]
[-SecondValue <Object>]
[-TypeConverter <Type>]
[-TypeAdapter <Type>]
[-SerializationMethod <String>]
[-TargetTypeForDeserialization <Type>]
[-SerializationDepth <Int32>]
[-DefaultDisplayProperty <String>]
[-InheritPropertySerializationSet <Nullable`1>]
[-StringSerializationSource <String>]
[-DefaultDisplayPropertySet <String[]>]
[-DefaultKeyPropertySet <String[]>]
[-PropertySerializationSet <String[]>]
-TypeName <String>
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Update-TypeData
[-Force]
[-TypeData] <TypeData[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
De Update-TypeData
cmdlet werkt de uitgebreide typegegevens in de sessie bij door de bestanden opnieuw te laden in het Types.ps1xml
geheugen en nieuwe uitgebreide typegegevens toe te voegen.
PowerShell laadt standaard uitgebreide gegevens van het type omdat deze nodig zijn. Zonder parameters Update-TypeData
worden alle Types.ps1xml
bestanden die in de sessie zijn geladen, opnieuw geladen, inclusief bestandstypen die u hebt toegevoegd. U kunt de parameters gebruiken om Update-TypeData
nieuwe typebestanden toe te voegen en uitgebreide typegegevens toe te voegen en te vervangen.
De Update-TypeData
cmdlet kan worden gebruikt om alle typegegevens vooraf te laden. Deze functie is met name handig wanneer u typen ontwikkelt en deze nieuwe typen wilt laden voor testdoeleinden.
Vanaf Windows PowerShell 3.0 kunt Update-TypeData
u uitgebreide typegegevens in de sessie toevoegen en vervangen zonder een Types.ps1xml
bestand te gebruiken. Typ gegevens die dynamisch worden toegevoegd, dus zonder een bestand, worden alleen toegevoegd aan de huidige sessie. Als u de typegegevens aan alle sessies wilt toevoegen, voegt u een Update-TypeData
opdracht toe aan uw PowerShell-profiel. Zie about_Profiles voor meer informatie.
Vanaf Windows PowerShell 3.0 kunt u ook de Get-TypeData
cmdlet gebruiken om de uitgebreide typen in de huidige sessie op te halen en de Remove-TypeData
cmdlet om uitgebreide typen uit de huidige sessie te verwijderen.
Uitzonderingen die voorkomen in eigenschappen of van het toevoegen van eigenschappen aan een Update-TypeData
opdracht, melden geen fouten. Dit is om uitzonderingen te onderdrukken die in veel algemene typen voorkomen tijdens het opmaken en uitvoeren. Als u .NET-eigenschappen krijgt, kunt u in plaats daarvan de onderdrukking van uitzonderingen omzeilen met behulp van de syntaxis van de methode, zoals wordt weergegeven in het volgende voorbeeld:
"hello".get_Length()
Houd er rekening mee dat de syntaxis van de methode alleen kan worden gebruikt met .NET-eigenschappen. Eigenschappen die worden toegevoegd door de cmdlet uit te voeren, kunnen geen syntaxis van de Update-TypeData
methode gebruiken.
Zie about_Types.ps1xml voor meer informatie over de Types.ps1xml
bestanden in PowerShell.
Voorbeelden
Voorbeeld 1: Uitgebreide typen bijwerken
Update-TypeData
Met deze opdracht wordt de configuratie van het uitgebreide type bijgewerkt van de Types.ps1xml
bestanden die al in de sessie zijn gebruikt.
Voorbeeld 2: Typen meerdere keren bijwerken
In dit voorbeeld ziet u hoe u de typen in een typebestand meerdere keren in dezelfde sessie bijwerkt.
Met de eerste opdracht wordt de configuratie van het uitgebreide type bijgewerkt van de Types.ps1xml
bestanden en worden de TypesA.types.ps1xml
bestanden TypesB.types.ps1xml
eerst verwerkt.
De tweede opdracht laat zien hoe u het TypesA.types.ps1xml
opnieuw kunt bijwerken, bijvoorbeeld als u een type in het bestand hebt toegevoegd of gewijzigd. U kunt de vorige opdracht voor het TypesA.types.ps1xml
bestand herhalen of een Update-TypeData
opdracht zonder parameters uitvoeren, omdat TypesA.types.ps1xml
deze al in de lijst met typebestanden voor de huidige sessie staat.
Update-TypeData -PrependPath TypesA.types.ps1xml, TypesB.types.ps1xml
Update-TypeData -PrependPath TypesA.types.ps1xml
Voorbeeld 3: Een scripteigenschap toevoegen aan DateTime-objecten
In dit voorbeeld wordt Update-TypeData
de eigenschap Quarter-script toegevoegd aan System.DateTime-objecten in de huidige sessie, zoals de objecten die door de Get-Date
cmdlet worden geretourneerd.
$typeDataParams = @{
TypeName = 'System.DateTime'
MemberType = 'ScriptProperty'
MemberName = 'Quarter'
Value = {
switch ($this.Month) {
{ $_ -in @(1, 2, 3) } { return 'Q1' }
{ $_ -in @(4, 5, 6) } { return 'Q2' }
{ $_ -in @(7, 8, 9) } { return 'Q3' }
default { return 'Q4' }
}
}
}
Update-TypeData @typeDataParams
(Get-Date).Quarter
Q1
De Update-TypeData
opdracht gebruikt de parameter TypeName om het type System.DateTime, de parameter MemberName op te geven om een naam op te geven voor de nieuwe eigenschap, de eigenschap MemberType om het type ScriptProperty op te geven en de parameter Waarde om het script op te geven dat het jaarlijkse kwartaal bepaalt.
De waarde van de eigenschap Waarde is een script waarmee het huidige jaarkwartaal wordt berekend. Het scriptblok gebruikt de $this
automatische variabele om het huidige exemplaar van het object en de In-operator weer te geven om te bepalen of de maandwaarde wordt weergegeven in elke matrix met gehele getallen. Zie about_Comparison_Operators voor meer informatie over de -in
operator.
Met de tweede opdracht wordt de nieuwe eigenschap Quarter van de huidige datum ophaalt.
Voorbeeld 4: Een type bijwerken dat standaard wordt weergegeven in lijsten
In dit voorbeeld ziet u hoe u de eigenschappen van een type instelt dat standaard wordt weergegeven in lijsten, dat wil gezegd, wanneer er geen eigenschappen zijn opgegeven. Omdat de typegegevens niet zijn opgegeven in een Types.ps1xml
bestand, is dit alleen van kracht in de huidige sessie.
Get-Date | Format-list
Update-TypeData -TypeName "System.DateTime" -DefaultDisplayPropertySet @(
'DateTime'
'DayOfYear'
'Quarter'
)
Get-Date | Format-List
DisplayHint : DateTime
Date : 8/7/2024 12:00:00 AM
Day : 7
DayOfWeek : Wednesday
DayOfYear : 220
Hour : 10
Kind : Local
Millisecond : 568
Minute : 34
Month : 8
Second : 43
Ticks : 638586236835683086
TimeOfDay : 10:34:43.5683086
Year : 2024
DateTime : Wednesday, August 7, 2024 10:34:43 AM
Quarter : Q3
DateTime : Wednesday, August 7, 2024 10:34:43 AM
DayOfYear : 220
Quarter : Q3
De eerste opdracht toont de lijstweergave voor de Get-Date
opdracht, die een System.DateTime-object uitvoert dat de huidige datum vertegenwoordigt. De opdracht maakt gebruik van een pijplijnoperator (|
) om het DateTime-object naar de Format-List
cmdlet te verzenden. Omdat de Format-List
opdracht niet de eigenschappen opgeeft die in de lijst moeten worden weergegeven, geeft PowerShell elke openbare, niet-verborgen eigenschap voor het object weer.
De tweede opdracht gebruikt de Update-TypeData
cmdlet om de standaardlijsteigenschappen voor het type System.DateTime in te stellen. De opdracht gebruikt de parameter TypeName om het type en de parameter DefaultDisplayPropertySet op te geven om de standaardeigenschappen voor een lijst op te geven. De geselecteerde eigenschappen bevatten de nieuwe scripteigenschap Quarter die in een vorig voorbeeld is toegevoegd.
Met de laatste opdracht wordt de huidige datum opgehaald en weergegeven in een lijstindeling. Hiermee worden alleen de eigenschappen weergegeven die zijn gedefinieerd in de Update-TypeData
opdracht, in plaats van de volledige lijst met eigenschappen.
Voorbeeld 5: De eigenschap instellen die een type in brede indeling weergeeft
In dit voorbeeld ziet u hoe u een nieuwe scripteigenschap maakt en deze gebruikt als de standaardeigenschap die wordt weergegeven wanneer het type wordt doorgegeven aan de Format-Wide
cmdlet.
Get-Command *File* | Format-Wide
Set-AppPackageProvisionedDataFile Set-ProvisionedAppPackageDataFile
Set-ProvisionedAppXDataFile Write-FileSystemCache
Write-FileSystemCache Block-FileShareAccess
Clear-FileStorageTier Close-SmbOpenFile
Debug-FileShare Disable-NetIPHttpsProfile
Enable-NetIPHttpsProfile Get-FileHash
Get-FileIntegrity Get-FileShare
Get-FileShareAccessControlEntry Get-FileStorageTier
Get-NetConnectionProfile Get-NetFirewallHyperVProfile
Get-NetFirewallProfile Get-SmbOpenFile
Get-StorageFileServer Get-SupportedFileSystems
Grant-FileShareAccess Import-PowerShellDataFile
New-FileShare New-NetFirewallHyperVProfile
New-ScriptFileInfo New-StorageFileServer
New-TemporaryFile Publish-BCFileContent
Remove-FileShare Remove-NetFirewallHyperVProfile
Remove-StorageFileServer Repair-FileIntegrity
Revoke-FileShareAccess Set-FileIntegrity
Set-FileShare Set-FileStorageTier
Set-NetConnectionProfile Set-NetFirewallHyperVProfile
Set-NetFirewallProfile Set-StorageBusProfile
Set-StorageFileServer Test-ScriptFileInfo
Unblock-FileShareAccess Update-ScriptFileInfo
Add-BitsFile Get-AIPFileStatus
Get-AppLockerFileInformation New-FileCatalog
New-PSRoleCapabilityFile New-PSSessionConfigurationFile
Out-File Set-AIPFileClassification
Set-AIPFileLabel Set-AppXProvisionedDataFile
Set-UevTemplateProfile Test-FileCatalog
Test-PSSessionConfigurationFile Unblock-File
FileDialogBroker.exe FileHistory.exe
forfiles.exe openfiles.exe
$typeDataParams = @{
TypeName = 'System.Management.Automation.CommandInfo'
DefaultDisplayProperty = 'FullyQualifiedName'
MemberType = 'ScriptProperty'
MemberName = 'FullyQualifiedName'
Value = {
[OutputType([string])]
param()
# For executables, return the path to the application.
if ($this -is [System.Management.Automation.ApplicationInfo]) {
return $this.Path
}
# For commands defined outside a module, return only the name.
if ([string]::IsNullOrEmpty($this.ModuleName)) {
return $this.Name
}
# Return the fully-qualified command name "<ModuleName>\<CommandName>"
return '{0}\{1}' -f $this.ModuleName, $this.Name
}
}
Update-TypeData @typeDataParams
Get-Command *File* | Format-Wide
Dism\Set-AppPackageProvisionedDataFile Dism\Set-ProvisionedAppPackageDataFile
Dism\Set-ProvisionedAppXDataFile Storage\Write-FileSystemCache
VMDirectStorage\Write-FileSystemCache Storage\Block-FileShareAccess
Storage\Clear-FileStorageTier SmbShare\Close-SmbOpenFile
Storage\Debug-FileShare NetworkTransition\Disable-NetIPHttpsProfile
NetworkTransition\Enable-NetIPHttpsProfile Microsoft.PowerShell.Utility\Get-FileHash
Storage\Get-FileIntegrity Storage\Get-FileShare
Storage\Get-FileShareAccessControlEntry Storage\Get-FileStorageTier
NetConnection\Get-NetConnectionProfile NetSecurity\Get-NetFirewallHyperVProfile
NetSecurity\Get-NetFirewallProfile SmbShare\Get-SmbOpenFile
Storage\Get-StorageFileServer Storage\Get-SupportedFileSystems
Storage\Grant-FileShareAccess Microsoft.PowerShell.Utility\Import-PowerShellDataFile
Storage\New-FileShare NetSecurity\New-NetFirewallHyperVProfile
PowerShellGet\New-ScriptFileInfo Storage\New-StorageFileServer
Microsoft.PowerShell.Utility\New-TemporaryFile BranchCache\Publish-BCFileContent
Storage\Remove-FileShare NetSecurity\Remove-NetFirewallHyperVProfile
Storage\Remove-StorageFileServer Storage\Repair-FileIntegrity
Storage\Revoke-FileShareAccess Storage\Set-FileIntegrity
Storage\Set-FileShare Storage\Set-FileStorageTier
NetConnection\Set-NetConnectionProfile NetSecurity\Set-NetFirewallHyperVProfile
NetSecurity\Set-NetFirewallProfile StorageBusCache\Set-StorageBusProfile
Storage\Set-StorageFileServer PowerShellGet\Test-ScriptFileInfo
Storage\Unblock-FileShareAccess PowerShellGet\Update-ScriptFileInfo
BitsTransfer\Add-BitsFile AzureInformationProtection\Get-AIPFileStatus
AppLocker\Get-AppLockerFileInformation Microsoft.PowerShell.Security\New-FileCatalog
Microsoft.PowerShell.Core\New-PSRoleCapabilityFile Microsoft.PowerShell.Core\New-PSSessionConfigurationFile
Microsoft.PowerShell.Utility\Out-File AzureInformationProtection\Set-AIPFileClassification
AzureInformationProtection\Set-AIPFileLabel Dism\Set-AppXProvisionedDataFile
UEV\Set-UevTemplateProfile Microsoft.PowerShell.Security\Test-FileCatalog
Microsoft.PowerShell.Core\Test-PSSessionConfigurationFile Microsoft.PowerShell.Utility\Unblock-File
C:\WINDOWS\system32\FileDialogBroker.exe C:\WINDOWS\system32\FileHistory.exe
C:\WINDOWS\system32\forfiles.exe C:\WINDOWS\system32\openfiles.exe
De eerste opdracht gebruikt de Get-Command
cmdlet om elke opdracht te retourneren met een naam die het woord File
bevat. Het pijpt de uitvoer naar de Format-Wide
cmdlet, waarin de namen van de opdrachten in kolommen worden weergegeven.
Vervolgens gebruikt Update-TypeData
het voorbeeld om zowel de DefaultDisplayProperty als een nieuwe scripteigenschap voor het type CommandInfo te definiëren. De uitvoer voor Get-Command
retourneert CommandInfo-objecten en -objecten die zijn afgeleid van dat type. De nieuwe scripteigenschap FullyQualifiedName retourneert het volledige pad naar uitvoerbare toepassingen en de volledig gekwalificeerde naam voor cmdlets, die de naam van de cmdlet voorvoegt met de module die deze definieert. De Update-TypeData
cmdlet kan de nieuwe scripteigenschap definiëren en gebruiken als defaultDisplayProperty in dezelfde opdracht.
Ten slotte toont de uitvoer de resultaten van de Get-Command
weergegeven in brede indeling na de type-update. Hier ziet u de volledig gekwalificeerde naam voor cmdlets en het volledige pad naar uitvoerbare toepassingen.
Voorbeeld 6: Typegegevens bijwerken voor een gesluisd object
$typeDataParams = @{
MemberType = 'ScriptProperty'
MemberName = 'SupportsUpdatableHelp'
Value = {
[OutputType([bool])]
param()
return (-not [string]::IsNullOrEmpty($this.HelpInfoUri))
}
}
Get-Module Microsoft.PowerShell.Utility | Update-TypeData @typeDataParams
Get-Module -ListAvailable -Name Microsoft.PowerShell.* |
Format-Table Name, SupportsUpdatableHelp
Name SupportsUpdatableHelp
---- ---------------------
Microsoft.PowerShell.Operation.Validation True
Microsoft.PowerShell.Archive True
Microsoft.PowerShell.Diagnostics True
Microsoft.PowerShell.Host True
Microsoft.PowerShell.LocalAccounts True
Microsoft.PowerShell.Management True
Microsoft.PowerShell.ODataUtils True
Microsoft.PowerShell.Security True
Microsoft.PowerShell.Utility True
In dit voorbeeld ziet u dat wanneer u een object doorsluist Update-TypeData
, Update-TypeData
uitgebreide typegegevens voor het objecttype toevoegt.
Deze techniek is sneller dan het gebruik van de Get-Member
cmdlet of de Get-Type
methode om het objecttype op te halen. Als u echter een verzameling objecten doorsluist naar Update-TypeData
, worden de typegegevens van het eerste objecttype bijgewerkt en wordt vervolgens een fout geretourneerd voor alle andere objecten in de verzameling omdat het lid al is gedefinieerd voor het type.
De eerste opdracht maakt gebruik van de Get-Module
cmdlet om de microsoft.PowerShell.Utility-module op te halen.
De opdracht geeft het moduleobject door aan de Update-TypeData
cmdlet, waarmee de typegegevens voor het type System.Management.Automation.PSModuleInfo en de typen die hiervan zijn afgeleid, worden bijgewerkt, zoals het type ModuleInfoGrouping dat Get-Module
wordt geretourneerd wanneer u de parameter ListAvailable in de opdracht gebruikt.
Met de Update-TypeData
opdrachten wordt de scripteigenschap SupportsUpdatableHelp toegevoegd aan alle geïmporteerde modules. De waarde van de parameter Waarde is een script dat retourneert $true
als de eigenschap HelpInfoUri van de module is ingevuld en $false
anders.
Met de tweede opdracht worden de moduleobjecten van Get-Module
naar de Format-Table
cmdlet uitgevoerd, waarin de eigenschappen Name en SupportsUpdatableHelp van de beschikbare modules worden weergegeven.
Parameters
-AppendPath
Hiermee geeft u het pad naar optionele .ps1xml
bestanden. De opgegeven bestanden worden geladen in de volgorde waarin ze worden vermeld nadat de ingebouwde bestanden zijn geladen. U kunt ook een AppendPath-waarde doorsluisen naar Update-TypeData
.
Type: | String[] |
Aliassen: | PSPath, Path |
Position: | 0 |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-Confirm
Hiermee wordt u gevraagd om bevestiging voordat u de cmdlet uitvoert.
Type: | SwitchParameter |
Aliassen: | cf |
Position: | Named |
Default value: | False |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-DefaultDisplayProperty
Hiermee geeft u de eigenschap op van het type dat wordt weergegeven door de Format-Wide
cmdlet wanneer er geen andere eigenschappen zijn opgegeven.
Typ de naam van een standaardeigenschap of uitgebreide eigenschap van het type. De waarde van deze parameter kan de naam zijn van een type dat wordt toegevoegd in dezelfde opdracht.
Deze waarde is alleen van kracht wanneer er geen brede weergaven zijn gedefinieerd voor het type in een Format.ps1xml
bestand.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | String |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-DefaultDisplayPropertySet
Hiermee geeft u een of meer eigenschappen van het type. Deze eigenschappen worden weergegeven door de Format-List
, Format-Table
en Format-Custom
cmdlets wanneer er geen andere eigenschappen zijn opgegeven.
Typ de namen van standaard- of uitgebreide eigenschappen van het type. De waarde van deze parameter kan de namen zijn van typen die in dezelfde opdracht worden toegevoegd.
Deze waarde is alleen van kracht als er respectievelijk geen lijst-, tabel- of aangepaste weergaven zijn gedefinieerd voor het type in een Format.ps1xml
bestand.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | String[] |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-DefaultKeyPropertySet
Hiermee geeft u een of meer eigenschappen van het type. Deze eigenschappen worden door de Group-Object
en Sort-Object
cmdlets gebruikt wanneer er geen andere eigenschappen worden opgegeven.
Typ de namen van standaard- of uitgebreide eigenschappen van het type. De waarde van deze parameter kan de namen zijn van typen die in dezelfde opdracht worden toegevoegd.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | String[] |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Force
Geeft aan dat de cmdlet gebruikmaakt van de opgegeven typegegevens, zelfs als er al typegegevens voor dat type zijn opgegeven.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-InheritPropertySerializationSet
Geeft aan of de set eigenschappen die worden geserialiseerd, wordt overgenomen. De standaardwaarde is $Null
. De aanvaardbare waarden voor deze parameter zijn:
$True
. De eigenschappenset wordt overgenomen.$False
. De eigenschappenset wordt niet overgenomen.$Null
. Overname is niet gedefinieerd.
Deze parameter is alleen geldig wanneer de waarde van de parameter SerializationMethod is SpecificProperties
. Wanneer de waarde van deze parameter is $False
, is de parameter PropertySerializationSet vereist.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | Nullable<T>[Boolean] |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-MemberName
Hiermee geeft u de naam van een eigenschap of methode.
Gebruik deze parameter met de parameters TypeName, MemberType, Value en SecondValue om een eigenschap of methode van een type toe te voegen of te wijzigen.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | String |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-MemberType
Hiermee geeft u het type van het lid dat moet worden toegevoegd of gewijzigd.
Gebruik deze parameter met de parameters TypeName, MemberType, Value en SecondValue om een eigenschap of methode van een type toe te voegen of te wijzigen. De aanvaardbare waarden voor deze parameter zijn:
- AliasProperty
- CodeMethod
- CodeProperty
- Opmerking
- ScriptMethod
- ScriptProperty
Zie De opsomming PSMemberTypes voor informatie over deze waarden.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | PSMemberTypes |
Geaccepteerde waarden: | NoteProperty, AliasProperty, ScriptProperty, CodeProperty, ScriptMethod, CodeMethod |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-PrependPath
Hiermee geeft u het pad naar de optionele .ps1xml
bestanden. De opgegeven bestanden worden geladen in de volgorde waarin ze worden vermeld voordat de ingebouwde bestanden worden geladen.
Type: | String[] |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-PropertySerializationSet
Hiermee geeft u de namen van eigenschappen die worden geserialiseerd. Gebruik deze parameter wanneer de waarde van de parameter SerializationMethod SpecificProperties is.
Type: | String[] |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-SecondValue
Hiermee geeft u aanvullende waarden op voor leden van AliasProperty, ScriptProperty, CodeProperty of CodeMethod .
Gebruik deze parameter met de parameters TypeName, MemberType, Value en SecondValue om een eigenschap of methode van een type toe te voegen of te wijzigen.
Wanneer de waarde van de parameter MemberType is AliasProperty
, moet de waarde van de parameter SecondValue een gegevenstype zijn. PowerShell converteert (dat wil gezegd, cast) de waarde van de aliaseigenschap naar het opgegeven type. Als u bijvoorbeeld een aliaseigenschap toevoegt die een alternatieve naam voor een tekenreekseigenschap biedt, kunt u ook een SecondValue van System.Int32 opgeven om de waarde van de aliastekenreeks te converteren naar een geheel getal.
Wanneer de waarde van de parameter MemberType is ScriptProperty
, kunt u de parameter SecondValue gebruiken om een extra scriptblok op te geven. Het scriptblok in de waarde van de parameter Waarde haalt de waarde van een variabele op. Het scriptblok in de waarde van de parameter SecondValue stelt de waarde van de variabele in.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | Object |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-SerializationDepth
Hiermee geeft u op hoeveel niveaus van het type objecten worden geserialiseerd als tekenreeksen. De standaardwaarde 1
serialiseert het object en de eigenschappen ervan. Een waarde van 0
serialiseert het object, maar niet de eigenschappen ervan. Een waarde van het serialiseren van 2
het object, de eigenschappen en eventuele objecten in eigenschapswaarden.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | Int32 |
Position: | Named |
Default value: | 1 |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-SerializationMethod
Hiermee geeft u een serialisatiemethode voor het type. Een serialisatiemethode bepaalt welke eigenschappen van het type worden geserialiseerd en welke techniek wordt gebruikt om ze te serialiseren. De aanvaardbare waarden voor deze parameter zijn:
AllPublicProperties
. Serialiseer alle openbare eigenschappen van het type. U kunt de parameter SerializationDepth gebruiken om te bepalen of onderliggende eigenschappen worden geserialiseerd.String
. Serialiseer het type als een tekenreeks. U kunt de StringSerializationSource gebruiken om een eigenschap op te geven van het type dat moet worden gebruikt als het serialisatieresultaat. Anders wordt het type geserialiseerd met behulp van de ToString-methode van het object.SpecificProperties
. Serialiseer alleen de opgegeven eigenschappen van dit type. Gebruik de parameter PropertySerializationSet om de eigenschappen op te geven van het type dat wordt geserialiseerd. U kunt ook de parameter InheritPropertySerializationSet gebruiken om te bepalen of de eigenschappenset is overgenomen en de parameter SerializationDepth om te bepalen of onderliggende eigenschappen worden geserialiseerd.
In PowerShell worden serialisatiemethoden opgeslagen in interne PSStandardMembers-objecten .
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | String |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-StringSerializationSource
Hiermee geeft u de naam van een eigenschap van het type. De waarde van de opgegeven eigenschap wordt gebruikt als het serialisatieresultaat. Deze parameter is alleen geldig wanneer de waarde van de parameter SerializationMethod string is.
Type: | String |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-TargetTypeForDeserialization
Hiermee geeft u het type aan welk object van dit type wordt geconverteerd wanneer ze worden gedeserialiseerd.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | Type |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-TypeAdapter
Hiermee geeft u het type adapter, zoals Microsoft.PowerShell.Cim.CimInstanceAdapter. Met een typeadapter kan PowerShell de leden van een type ophalen.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | Type |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-TypeConverter
Hiermee geeft u een typeconversieprogramma om waarden tussen verschillende typen te converteren. Als een typeconversieprogramma is gedefinieerd voor een type, wordt een exemplaar van het typeconversieprogramma gebruikt voor de conversie.
Voer een System.Type-waarde in die is afgeleid van de klassen System.ComponentModel.TypeConverter of System.Management.Automation.PSTypeConverter .
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | Type |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-TypeData
Hiermee geeft u een matrix van het type gegevens op die door deze cmdlet aan de sessie worden toegevoegd. Voer een variabele in die een TypeData-object of een opdracht bevat waarmee een TypeData-object wordt opgehaald, zoals een Get-TypeData
opdracht. U kunt ook een TypeData-object doorsluisen naar Update-TypeData
.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | TypeData[] |
Position: | 0 |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-TypeName
Hiermee geeft u de naam van het type dat moet worden uitgebreid.
Voer de korte naam in voor typen in de systeemnaamruimte . Anders is de volledige typenaam vereist. Jokertekens worden niet ondersteund.
U kunt namen van sluistekens sluistekens naar Update-TypeData
. Wanneer u een object doorsluist Update-TypeData
naar, Update-TypeData
haalt u de typenaam van het object op en typt u gegevens naar het objecttype.
Gebruik deze parameter met de parameters MemberName, MemberType, Value en SecondValue om een eigenschap of methode van een type toe te voegen of te wijzigen.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | String |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-Value
Hiermee geeft u de waarde van de eigenschap of methode.
Als u een AliasProperty
, CodeProperty
ScriptProperty
of CodeMethod
lid toevoegt, kunt u de parameter SecondValue gebruiken om aanvullende informatie toe te voegen.
Gebruik deze parameter met de parameters MemberName, MemberType, Value en SecondValue om een eigenschap of methode van een type toe te voegen of te wijzigen.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | Object |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-WhatIf
Hiermee wordt weergegeven wat er zou gebeuren als u de cmdlet uitvoert. De cmdlet wordt niet uitgevoerd.
Type: | SwitchParameter |
Aliassen: | wi |
Position: | Named |
Default value: | False |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
Invoerwaarden
U kunt een tekenreeks met de waarden van de parameters AppendPath, TypeName of TypeData doorsluisen naar deze cmdlet.
Uitvoerwaarden
None
Deze cmdlet retourneert geen uitvoer.