Udostępnij za pośrednictwem


ConvertFrom-CliXml

Konwertuje ciąg w formacie CliXml na niestandardowy obiekt PSObject.

Składnia

ConvertFrom-CliXml
                [-InputObject] <String>
                [<CommonParameters>]

Opis

Polecenie ConvertFrom-CliXml cmdlet konwertuje ciągi sformatowane jako xml infrastruktury języka wspólnego (CLI) na niestandardowy obiekt PSObject. To polecenie jest podobne do Import-Clixmlpolecenia , ale nie jest odczytywane z pliku. Zamiast tego przyjmuje ciąg jako dane wejściowe.

Nowo zdeserializowane obiekty nie są obiektami dynamicznymi. Są to migawki obiektów w czasie serializacji. Zdeserializowane obiekty zawierają właściwości, ale nie są to metody. Właściwość PSTypeNames zawiera oryginalną nazwę typu poprzedzoną prefiksem Deserialized.

To polecenie cmdlet zostało wprowadzone w programie PowerShell 7.5-preview.4.

Przykłady

Przykład 1 — konwertowanie obiektu procesu na interfejs Wiersza polecenia i z powrotem

W tym przykładzie pokazano wynik konwersji obiektu procesu na cliXml i z powrotem. Najpierw bieżący proces jest przechowywany w zmiennej $process. Właściwość PSTypeNames obiektu procesu pokazuje, że obiekt jest typu System.Diagnostics.Process. Następne polecenie wyświetla liczbę dla każdego typu elementu członkowskiego w obiekcie procesu.

$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

Następnie obiekt procesu jest konwertowany na interfejs CliXml i z powrotem. Typ nowego obiektu ma prefiks Deserialized. Liczba elementów członkowskich w nowym obiekcie różni się od oryginalnego obiektu.

Parametry

-InputObject

Obiekt zawierający ciąg w formacie CliXml, który ma zostać przekonwertowany.

Typ:String
Position:0
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

String

Dane wyjściowe

Object