Beschreibt die Operatoren, die mit Microsoft .NET Framework-Typen (about_type_operators)

   
# THEMA
about_Type_Operators

# KURZBESCHREIBUNG
Beschreibt die Operatoren, die mit Microsoft .NET Framework-Typen
verwendet werden können.

# DETAILBESCHREIBUNG
Die booleschen Typoperatoren (-is und -isnot) geben an, ob ein
Objekt eine Instanz eines angegebenen .NET Framework-Typs ist.
Der Operator "-is" gibt den Wert TRUE zurück, wenn der Typ
übereinstimmt; andernfalls wird FALSE zurückgegeben. Der Operator
"-isnot" gibt den Wert FALSE zurück, wenn der Typ übereinstimmt;
andernfalls wird TRUE zurückgegeben.

Der Operator "-as" versucht, das Eingabeobjekt in den angegebenen
.NET Framework-Typ zu konvertieren. Wenn dies erfolgreich ist,
wird das konvertierte Objekt zurückgegeben. Andernfalls erfolgt
keine Rückgabe. Es wird kein Fehler zurückgegeben.

In der folgenden Tabelle sind die Typoperatoren in Windows
PowerShell aufgeführt.

Operator Beschreibung Beispiel
-------- ------------------------ --------------
-is Gibt TRUE zurück, wenn C:\PS> (get-date) -is [datetime]
die Eingabe eine Instanz True
des angegebenen
.NET Framework-Typs ist.

-isnot Gibt TRUE zurück, wenn C:\PS> (get-date) -isnot [datetime]
die Eingabe keine Instanz False
des angegebenen
.NET Framework-Typs ist.

-as Konvertiert die Eingabe C:\PS> 31.12.07 -as [datetime]
in den angegebenen Montag, 31. Dezember 2007 00:00:00
.NET Framework-Typ.

Typoperatoren weisen die folgende Syntax auf:

<Eingabe> <Operator> [.NET-Typ]

Sie können auch folgende Syntax verwenden:

<Eingabe> <Operator> ".NET-Typ"

Schließen Sie den Typnamen in Klammern ein ([ ]), oder geben Sie
den Typ als Zeichenfolge ein, beispielsweise [DateTime] oder
"datetime" für System.DateTime, um den .NET Framework-Typ
anzugeben. Geben Sie den vollständigen Namen des Objekttyps an,
wenn sich der Typ nicht am Stamm des Systemnamespaces befindet.
"System" muss nicht angegeben werden. Um beispielsweise
"System.Diagnostics.Process" anzugeben, geben Sie [System.Diagnost
ics.Process], [Diagnostics.Process] oder "diagnostics.process" ein.

Die Typoperatoren geben immer einen booleschen Wert zurück, auch
wenn die Eingabe eine Auflistung von Objekten ist. Wenn die
Eingabe jedoch eine Auflistung darstellt, stimmen die
Typoperatoren mit dem .NET Framework-Typ der Auflistung überein.
Auch wenn alle Objekte den gleichen Typ aufweisen, stimmen sie
nicht mit dem Typ aller Objekte überein.

Um den .NET Framework-Typ eines Objekts zu suchen, verwenden Sie
das Cmdlet "Get-Member". Sie können auch die GetType-Methode
aller Objekte mit der FullName-Eigenschaft dieser Methode
verwenden. Die folgende Anweisung ruft beispielsweise den Typ des
Rückgabewerts eines Get-Culture-Befehls ab:

C:\PS> (get-culture).gettype().fullname
System.Globalization.CultureInfo

BEISPIELE
In den folgenden Beispielen werden einige Verwendungsmöglichkeiten
für Typoperatoren veranschaulicht:

C:\PS> 32 -is [Float]
False

C:\PS> 32 -is "int"
True

C:\PS> (get-date) -is [DateTime]
True

C:\PS> "31.12.2007" -is [DateTime]
False

C:\PS> "31.12.2007" -is [String]
True

C:\PS> (get-process powershell)[0] -is [System.Diagnostics.Process]
True

C:\PS> (get-command get-member) -is [System.Management.Automation.CmdletInfo]
True

Im folgenden Beispiel wird gezeigt, dass der entsprechende Typ
der .NET Framework-Typ der Auflistung und nicht der Typ der
einzelnen Objekte in der Auflistung ist, wenn die Eingabe eine
Auflistung von Objekten darstellt.

In diesem Beispiel stellt eine Auflistung dieser Objekte ein
System.Object-Array dar, auch wenn das Cmdlet "Get-Culture" und
das Cmdlet "Get-UICulture" System.Globalization.CultureInfo-Objekt
e zurückgeben.

C:\PS> (get-culture) -is [System.Globalization.CultureInfo]
True

C:\PS> (get-uiculture) -is [System.Globalization.CultureInfo]
True

C:\PS> (get-culture), (get-uiculture) -is [System.Globalization.CultureInfo]
False

C:\PS> (get-culture), (get-uiculture) -is [Array]
True

C:\PS> (get-culture), (get-uiculture) | foreach {$_ -is [System.Globalization.CultureInfo])
True
True

C:\PS> (get-culture), (get-uiculture) -is [Object]
True

In den folgenden Beispielen wird die Verwendung des Operators
"-as" veranschaulicht.

C:\PS> "31.12.07" -is [datetime]
False

C:\PS> "31.12.07" -as [datetime]
Montag, 31. Dezember 2007 00:00:00

C:\PS> $date = "31.12.07" -as [datetime]

C:\PS>$a -is [datetime]
True

C:\PS> 1031 -as [System.Globalization.CultureInfo]

LCID Name DisplayName
---- ---- -----------
1031 de-DE Deutsch (Deutschland)

Im folgenden Beispiel wird gezeigt, dass keine Rückgabe erfolgt,
wenn das Eingabeobjekt vom Operator "-as" nicht in den .NET
Framework-Typ konvertiert werden kann.

C:\PS> 1031 -as [System.Diagnostic.Process]
C:\PS>

SIEHE AUCH
about_Operators

C:\Windows>powershell get-help about_Variables -full

ColorConsole [Version 1.7.1000] PowerShell 2.0-Export
Microsoft Windows [Version 6.1.7600]
Copyright (c) 2014 Microsoft Corporation.

OS: Windows-10 / Windows-8.1 & 8 / Windows-7 & Vista / Windows Server 2008-2016
»»»» ColorConsole



 


... Home  
... Impressum
... ColorConsole

... CMD
... Netsh-XP
... Netsh-7
... Netsh-Vista
... Powershell





;-)









Windows 7 download: Starter, Home (Basic Premium), Professional und Win 7 Ultimate!

... facebook.de
0.062
Nach der Installation von Windows-7 funktioniert der USB-Stick nicht mehr, obwohl der Rechner Sie erkennt?  / Kann ich alle Listen und Ordnerinhalte drucken?  / Wie lange dauert 35 mal überschreiben?  / How to turn On and Off the Tablet Mode in Windows 10?  / Wie kann ich die Computerverwaltung in Windows 7 starten?  / Filemanager Q-Dir on Windows 8.1 (explorer, test, verification)?  / Windows 8 Beta Download?  / Wo ist das Windows Media Center in Windows 10?  / Restart the MS Explorer in Windows 8.1 / 10 (Reset, Filemanager)!  / Symbolabstand auf dem Windows 10 Desktop anpassen (Icon)?  / Fastest way to switch user in Windows 10 without log-off?  / Create a password reset eg. recovery disk for Windows 8.1, 8 and Windows 10!  /