2013-06-06 15 views
8

to działa:PowerShell ToUpper() w String

Output "Cluster Group: ""$($Group.Name)"", Current Owner: $($Group.OwnerNode), Current State: $($Group.State)" 

To nie działa:

Output "Cluster Group: ""$($Group.Name)"", Current Owner: $($Group.OwnerNode.ToUpper()), Current State: $($Group.State)" 

z błędem to:

Method invocation failed because [Microsoft.FailoverClusters.PowerShell.ClusterNode] doesn't contain a method named 'ToUpper'. 

pomysłów, w jaki sposób uzyskać to do łańcucha od wyjścia ciągu Get-ClusterGroup do wielkich liter? Dzięki!

Odpowiedz

19

ToUpper() jest metodą łańcuchową, a OwnerNode prawdopodobnie nie jest łańcuchem. Wywołaj metodę ToString() przed wywołaniem ToUpper().

$($Group.OwnerNode.ToString().ToUpper()) 
3

Jak Shay Levy już wyjaśniono, OwnerNode nie jest ciągiem znaków i dlatego nie ma sposobu ToUpper(). Możesz zadzwonić pod numer ToUpper() na jego właściwość Name, jednak:

$($Group.OwnerNode.Name.ToUpper())