ConvertFrom-CliXml
Преобразует строку в формате CliXml в пользовательский PSObject.
Синтаксис
ConvertFrom-CliXml
[-InputObject] <String>
[<CommonParameters>]
Описание
Командлет ConvertFrom-CliXml
преобразует строки, отформатированные как XML-код инфраструктуры общего языка (CLI) в пользовательский PSObject. Эта команда аналогична Import-Clixml
, но она не считывается из файла. Вместо этого он принимает строку в качестве входных данных.
Только что десериализированные объекты не являются динамическими. Они — это моментальный снимок объектов во время сериализации. Десериализированные объекты включают свойства, но не методы. Свойство pstypenames содержит префикс имени исходного типа, префиксированного Deserialized
.
Этот командлет появился в PowerShell 7.5-preview.4.
Примеры
Пример 1. Преобразование объекта процесса в CliXml и обратно
В этом примере показан результат преобразования объекта процесса в CliXml и обратно. Во-первых, текущий процесс хранится в переменной $process
. Свойство pstypenames объекта процесса показывает, что объект имеет тип System.Diagnostics.Process. Следующая команда отображает количество элементов каждого типа в объекте процесса.
$process = Get-Process -Id $PID
$process.pstypenames
System.Diagnostics.Process
System.ComponentModel.Component
System.MarshalByRefObject
System.Object
$process | Get-Member | Group-Object MemberType | Select-Object Name, Count
Name Count
---- -----
AliasProperty 7
CodeProperty 1
Property 52
NoteProperty 1
ScriptProperty 8
PropertySet 2
Method 19
Event 4
$xml = $process | ConvertTo-CliXml
$fromXML = ConvertFrom-CliXml $xml
$fromXML.pstypenames
Deserialized.System.Diagnostics.Process
Deserialized.System.ComponentModel.Component
Deserialized.System.MarshalByRefObject
Deserialized.System.Object
$fromXML | Get-Member | Group-Object MemberType | Select-Object Name, Count
Name Count
---- -----
Property 46
NoteProperty 17
PropertySet 2
Method 2
Затем объект процесса преобразуется в CliXml и обратно. Тип нового объекта имеет префикс Deserialized
. Количество элементов в новом объекте отличается от исходного объекта.
Параметры
-InputObject
Объект, содержащий преобразованную строку в формате CliXml.
Тип: | String |
Position: | 0 |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
Входные данные
Выходные данные
Связанные ссылки
PowerShell