Frage

Warum (gci c:\ddd).count auf einem leeren Ordner nicht zurückgeben 0, aber „nichts“

bekomme ich nur einen Fehler „Sie können nicht eine Methode auf einem Null-wertigen Ausdruck nennen.“ Wenn mein Count-Zustand nicht übereinstimmt.

Was brauche ich, um „get“ die Null, um die Ausnahme zu verhindern?

War es hilfreich?

Lösung

Mit dem Operator @(), um sicherzustellen, dass das Ergebnis ein Array ist, einschließlich leer oder enthält ein einzelnes Element:

@(gci c:\ddd).count

Befehle zurückgeben kann: 1) eine Sammlung; 2) ein einzelnes Objekt; 3) null. Ihr Fall ist 3. Aufruf .Count auf null (Fall 3) oder auf einem Objekt, das nicht eine Eigenschaft Count hat (Fall 2) bekommt nichts oder fehlschlagen kann, beispielsweise mit striktem Modus Set-StrictMode -Version 2 aktiviert.

@(...) ist immer ein Array und Count funktioniert.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top