Поделиться через


Update-TypeData

Обновляет данные расширенного типа во время сеанса.

Синтаксис

FileSet (По умолчанию)

Update-TypeData
    [[-AppendPath] <String[]>]
    [-PrependPath <String[]>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

DynamicTypeSet

Update-TypeData
    -TypeName <String>
    [-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[]>]
    [-Force]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

TypeDataSet

Update-TypeData
    [-TypeData] <TypeData[]>
    [-Force]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Описание

Командлет Update-TypeData обновляет данные расширенного типа в сеансе, перезагрузив Types.ps1xml файлы в память и добавив новые данные расширенного типа.

По умолчанию PowerShell загружает данные расширенного типа по мере необходимости. Без параметров Update-TypeData перезагрузит все Types.ps1xml файлы, загруженные в сеансе, включая все добавленные файлы типов. Параметры можно использовать для добавления новых файлов типов и добавления и замены данных расширенного Update-TypeData типа.

Командлет Update-TypeData можно использовать для предварительной загрузки всех данных типа. Эта функция особенно полезна при разработке типов и требуется загрузить эти новые типы для тестирования.

Начиная с Windows PowerShell 3.0, можно использовать для Update-TypeData добавления и замены данных расширенного типа в сеансе без использования Types.ps1xml файла. Данные типа, добавляемые динамически, то есть без файла добавляются только в текущий сеанс. Чтобы добавить данные типа ко всем сеансам, добавьте Update-TypeData команду в профиль PowerShell. Дополнительные сведения см. в about_Profiles.

Кроме того, начиная с Windows PowerShell 3.0, можно использовать Get-TypeData командлет для получения расширенных типов в текущем сеансе и Remove-TypeData командлета для удаления расширенных типов из текущего сеанса.

Исключения, возникающие в свойствах или добавлении свойств в Update-TypeData команду, не сообщают об ошибках. Это позволяет подавлять исключения, которые будут возникать во многих распространенных типах во время форматирования и вывода. При получении свойств .NET можно обойти подавление исключений с помощью синтаксиса метода, как показано в следующем примере:

"hello".get_Length()

Обратите внимание, что синтаксис метода можно использовать только с свойствами .NET. Свойства, добавленные с помощью командлета Update-TypeData, не могут использовать синтаксис метода.

Дополнительные сведения о файлах Types.ps1xml в PowerShell см. в разделе about_Types.ps1xml.

Примеры

Пример 1. Обновление расширенных типов

Update-TypeData

Эта команда обновляет конфигурацию расширенного типа из Types.ps1xml файлов, которые уже использовались в сеансе.

Пример 2. Типы обновлений несколько раз

В этом примере показано, как обновлять типы в файле типов несколько раз в одном сеансе.

Первая команда обновляет конфигурацию расширенного Types.ps1xml типа из файлов, обрабатывая TypesA.types.ps1xml файлы и TypesB.types.ps1xml файлы.

Вторая команда показывает, как обновить TypesA.types.ps1xml повторно, например, если вы добавили или изменили тип в файле. Вы можете повторить предыдущую TypesA.types.ps1xml команду для Update-TypeData файла или выполнить команду без параметров, так как TypesA.types.ps1xml уже находится в списке файлов типов для текущего сеанса.

Update-TypeData -PrependPath TypesA.types.ps1xml, TypesB.types.ps1xml
Update-TypeData -PrependPath TypesA.types.ps1xml

Пример 3. Добавление свойства скрипта в объекты DateTime

В этом примере используется Update-TypeData для добавления свойства скрипта "Квартал" в объекты System.DateTime в текущем сеансе, например возвращаемых командлетомGet-Date.

$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

Команда Update-TypeData использует параметр TypeName для указания типа System.DateTime, параметра MemberName, чтобы указать имя нового свойства, свойство MemberType, чтобы указать тип ScriptProperty и параметр Value, чтобы указать скрипт, определяющий годовой квартал.

Значение свойства Value — это скрипт, вычисляющий текущий годовой квартал. Блок скрипта использует $this автоматическую переменную для представления текущего экземпляра объекта и оператора In, чтобы определить, отображается ли значение месяца в каждом целочисленном массиве. Дополнительные сведения о операторе -in см. в about_Comparison_Operators.

Вторая команда получает новое свойство Квартал текущей даты.

Пример 4. Обновление типа, отображающегося в списках по умолчанию

В этом примере показано, как задать свойства типа, отображаемого в списках по умолчанию, то есть если свойства не указаны. Так как данные типа не указаны в Types.ps1xml файле, он действует только в текущем сеансе.

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

Первая команда показывает представление списка для Get-Date команды, которая выводит объект System.DateTime , представляющий текущую дату. Команда использует оператор конвейера (|) для отправки объекта DateTime командлету Format-List . Format-List Так как команда не указывает свойства, отображаемые в списке, PowerShell отображает каждое общедоступное, не скрытое свойство для объекта.

Вторая команда использует Update-TypeData командлет для задания свойств списка по умолчанию для типа System.DateTime . Команда использует параметр TypeName для указания типа и параметра DefaultDisplayPropertySet, чтобы указать свойства по умолчанию для списка. Выбранные свойства включают новое свойство скрипта Квартал , добавленное в предыдущем примере.

Последняя команда получает текущую дату и снова отображает ее в формате списка. Он отображает только свойства, определенные в команде Update-TypeData , а не полный список свойств.

Пример 5. Задание свойства тип отображается в широком формате

В этом примере показано, как создать новое свойство скрипта и использовать его в качестве свойства по умолчанию, отображаемого при передаче типа командлету Format-Wide .

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

Первая команда использует Get-Command командлет для возврата каждой команды с именем, содержащим слово File. Он передает выходные данные Format-Wide командлету, в котором отображаются имена команд в столбцах.

Далее пример используется Update-TypeData для определения свойства DefaultDisplayProperty и нового свойства скрипта для типа CommandInfo . Выходные данные для Get-Command возвращаемых объектов и объектов CommandInfo , производных от этого типа. Новое свойство скрипта FullQualifiedName возвращает полный путь к исполняемым приложениям и полное имя командлетов, которое префиксирует имя командлета с помощью модуля, определяющего его. Командлет Update-TypeData может определить новое свойство скрипта и использовать его в качестве defaultDisplayProperty в той же команде.

Наконец, выходные данные показывают результаты Get-Command отображения в широком формате после обновления типа. В нем отображается полное имя командлетов и полный путь к исполняемым приложениям.

Пример 6. Обновление данных типа для объекта с каналом

$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

В этом примере показано, что при канале объекта Update-TypeDataUpdate-TypeData добавляется расширенные данные типа для типа объекта.

Этот метод быстрее, чем с помощью командлета Get-MemberGet-Type или метода для получения типа объекта. Однако при канале коллекции объектов Update-TypeDataон обновляет данные типа первого типа объекта, а затем возвращает ошибку для всех остальных объектов в коллекции, так как элемент уже определен в типе.

Первая команда использует Get-Module командлет для получения модуля Microsoft.PowerShell.Utility . Командный объект передает объект Update-TypeData модуля командлету, который обновляет данные типа для типа System.Management.Automation.PSModuleInfo и типы, производные от него, например тип ModuleInfoGrouping , который Get-Module возвращается при использовании параметра ListAvailable в команде.

Команды Update-TypeData добавляют свойство скрипта SupportsUpdatableHelp ко всем импортированным модулям. Значение параметра Value — это скрипт, который возвращает $true , если свойство HelpInfoUri модуля заполняется и в $false противном случае.

Вторая команда передает объекты модуля из Get-ModuleFormat-Table командлета, в котором отображаются свойства Name и SupportsUpdatableHelp доступных модулей.

Параметры

-AppendPath

Указывает путь к необязательным .ps1xml файлам. Указанные файлы загружаются в том порядке, в который они перечислены после загрузки встроенных файлов. Можно также передать в .

Свойства параметров

Тип:

String[]

Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:PSPath, Путь

Наборы параметров

FileSet
Position:0
Обязательно:False
Значение из конвейера:True
Значение из конвейера по имени свойства:True
Значение из оставшихся аргументов:False

-Confirm

Запрашивает подтверждение перед запуском cmdlet.

Свойства параметров

Тип:SwitchParameter
Default value:False
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:cf

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-DefaultDisplayProperty

Указывает свойство типа, отображаемого командлетом Format-Wide , если другие свойства не указаны.

Введите имя стандартного или расширенного свойства типа. Значение этого параметра может быть именем типа, добавленного в ту же команду.

Это значение действует только в том случае, если для типа в файле нет широких представлений Format.ps1xml .

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметров

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-DefaultDisplayPropertySet

Указывает одно или несколько свойств типа. Эти свойства отображаются командлетами Format-ListFormat-Table, а Format-Custom командлеты не указываются.

Введите имена стандартных или расширенных свойств типа. Значение этого параметра может быть именами типов, добавленных в ту же команду.

Это значение действует только в том случае, если нет списка, таблицы или пользовательских представлений соответственно, определенных для типа в Format.ps1xml файле.

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметров

Тип:

String[]

Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-DefaultKeyPropertySet

Указывает одно или несколько свойств типа. Эти свойства используются Group-Object командлетами, Sort-Object если другие свойства не указаны.

Введите имена стандартных или расширенных свойств типа. Значение этого параметра может быть именами типов, добавленных в ту же команду.

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметров

Тип:

String[]

Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Force

Указывает, что командлет использует указанные данные типа, даже если данные типа уже указаны для этого типа.

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметров

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False
TypeDataSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-InheritPropertySerializationSet

Указывает, наследуется ли набор свойств, сериализованных. Значение по умолчанию — $null. Допустимые значения для этого параметра:

  • $true. набор свойств наследуется.
  • $false. набор свойств не наследуется.
  • $null. наследование не определено.

Этот параметр действителен только в том случае, если значение параметра SerializationMethod равно SpecificProperties. Если значение этого параметра равно $false, требуется параметр PropertySerializationSet .

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметров

Тип:

Nullable<T>[Boolean]

Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-MemberName

Указывает имя свойства или метода.

Используйте этот параметр с параметрамиTypeName , MemberType, Value и SecondValue для добавления или изменения свойства или метода типа.

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметров

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-MemberType

Указывает тип элемента для добавления или изменения.

Используйте этот параметр с параметрамиTypeName , MemberType, Value и SecondValue для добавления или изменения свойства или метода типа. Допустимые значения для этого параметра:

  • ПсевдонимProperty
  • CodeMethod
  • CodeProperty
  • Примечаниеproperty
  • ScriptMethod
  • ScriptProperty

Сведения об этих значениях см. в разделе "Перечисление PSMemberTypes".

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметров

Тип:PSMemberTypes
Default value:None
Допустимые значения:NoteProperty, AliasProperty, ScriptProperty, CodeProperty, ScriptMethod, CodeMethod
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-PrependPath

Указывает путь к необязательным .ps1xml файлам. Указанные файлы загружаются в том порядке, в который они перечислены перед загрузкой встроенных файлов.

Свойства параметров

Тип:

String[]

Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

FileSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-PropertySerializationSet

Задает имена свойств, сериализованных. Используйте этот параметр, если значение параметра SerializationMethod SpecificProperties.

Свойства параметров

Тип:

String[]

Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-SecondValue

Задает дополнительные значения для AliasProperty, ScriptProperty, CodePropertyили элементов CodeMethod.

Используйте этот параметр с параметрами TypeName, MemberType, Value и SecondValue, чтобы добавить или изменить свойство или метод типа.

Если значение параметра MemberType равно AliasProperty, значение параметра SecondValue должно быть типом данных. PowerShell преобразует (то есть приводит) значение свойства псевдонима к указанному типу. Например, если добавить свойство псевдонима, которое предоставляет альтернативное имя строкового свойства, можно также указать значение SecondValuesystem.Int32 , чтобы преобразовать псевдоним строковое значение в целое число.

Если значение параметра MemberType имеет значение ScriptProperty, можно использовать параметр SecondValue для указания дополнительного блока скрипта. Блок скрипта в значении параметра value получает значение переменной. Блок скрипта в значении параметра SecondValue задает значение переменной.

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметров

Тип:Object
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-SerializationDepth

Указывает, сколько уровней объектов типа сериализуются в виде строк. Значение 1 по умолчанию сериализует объект и его свойства. Значение сериализации 0 объекта, но не его свойств. Значение сериализации 2 объекта, его свойств и любых объектов в значениях свойств.

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметров

Тип:Int32
Default value:1
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-SerializationMethod

Задает метод сериализации для типа. Метод сериализации определяет, какие свойства типа сериализуются, а также метод, используемый для их сериализации. Допустимые значения для этого параметра:

  • AllPublicProperties. сериализуются все открытые свойства типа. Для определения сериализации дочерних свойств можно использовать параметр SerializationDepth.
  • String. типа сериализуется в виде строки. Можно использовать StringSerializationSource, чтобы указать свойство типа, используемого в качестве результата сериализации. В противном случае тип сериализуется с помощью метода ToString объекта.
  • SpecificProperties. Сериализируйте только указанные свойства этого типа. Используйте параметр PropertySerializationSet, чтобы указать свойства сериализованного типа. Можно также использовать параметр InheritPropertySerializationSet, чтобы определить, наследуется ли набор свойств и параметр SerializationDepth, чтобы определить, сериализуются ли дочерние свойства.

В PowerShell методы сериализации хранятся во внутренних объектах PSStandardMembers .

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметров

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-StringSerializationSource

Задает имя свойства типа. Значение указанного свойства используется в качестве результата сериализации. Этот параметр действителен, только если значение параметра SerializationMethod имеет значение String.

Свойства параметров

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-TargetTypeForDeserialization

Указывает тип, в который преобразуется объект этого типа при десериализации.

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметров

Тип:Type
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-TypeAdapter

Указывает тип адаптера типа, например Microsoft.PowerShell.Cim.CimInstanceAdapter. Адаптер типа позволяет PowerShell получать элементы типа.

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметров

Тип:Type
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-TypeConverter

Указывает преобразователь типов для преобразования значений между различными типами. Если для типа определен преобразователь типов, для преобразования используется экземпляр преобразователя типов.

Введите значение System.Type, которое является производным от классов System.ComponentModel.TypeConverter или System.Management.Automation.PSTypeConverter.

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметров

Тип:Type
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-TypeData

Указывает массив данных типа, которые этот командлет добавляет в сеанс. Введите переменную, содержащую объект TypeData или команду, которая получает объект TypeData, например Get-TypeData команду. Можно также передать в .

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметров

Тип:

TypeData[]

Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

TypeDataSet
Position:0
Обязательно:True
Значение из конвейера:True
Значение из конвейера по имени свойства:True
Значение из оставшихся аргументов:False

-TypeName

Указывает имя расширения типа.

Для типов в пространстве имен System введите короткое имя. В противном случае необходимо полное имя типа. Подстановочные знаки не поддерживаются.

Имена типов можно передавать в Update-TypeData. При отправке объекта Update-TypeDataUpdate-TypeData в объект возвращает имя типа объекта и тип данных типа в тип объекта.

Используйте этот параметр с параметрамиmemberName , MemberType, Value и SecondValue для добавления или изменения свойства или метода типа.

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметров

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:True
Значение из конвейера:True
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Value

Указывает значение свойства или метода.

Если вы добавляете AliasProperty, CodePropertyScriptPropertyили CodeMethod член, можно использовать параметр SecondValue для добавления дополнительных сведений.

Используйте этот параметр с параметрамиmemberName , MemberType, Value и SecondValue для добавления или изменения свойства или метода типа.

Этот параметр появился в Windows PowerShell 3.0.

Свойства параметров

Тип:Object
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

DynamicTypeSet
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-WhatIf

Показывает, что произойдет, если командлет будет запущен. Командлет не запускается.

Свойства параметров

Тип:SwitchParameter
Default value:False
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:wi

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

CommonParameters

Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.

Входные данные

String

Можно передать строку, содержащую значения параметров AppendPath, TypeName или TypeData , в этот командлет.

Выходные данные

None

Этот командлет не возвращает выходные данные.