簡體   English   中英

返回類型 PSObject 不正確

[英]Return type PSObject not right

我有一個關於 PSObject 的情況。 事情是當我在不同的腳本中只寫同一個 PSObject 時,它會返回它應該返回的內容。

$returnobject = New-Object -TypeName psobject
$returnobject | Add-Member -MemberType NoteProperty -Name LocalITMail -Value "what"
$returnobject | Add-Member -MemberType NoteProperty -Name LocationSufix -Value "wont you "
$returnobject | Add-Member -MemberType NoteProperty -Name Webproxy -Value "work"
return $returnobject

我明白了

在此處輸入圖像描述

這很好。

但是當我從更大的腳本調用 function 時,返回類型與上面的形式不同,我無法訪問它的屬性。

例子:
在此處輸入圖像描述

我做錯了什么,有沒有辦法返回 PSObject 類型,這樣我就不會得到這個@{...} output? 謝謝。

在 powershell 中使用 Class 並調用函數/方法時,PSObject 不是字符串。 這是我的問題。

@codaamok 評論在這里幫助了我

不知道 powershell 方法/函數允許返回 PSObject

   [PSobject] GetLocation($User, $LocationList) {
    #create return object since we are returning more values. 
    $returnobject = New-Object -TypeName psobject

    foreach ($item in $LocationList) {
        if ($item.zzlocat -eq $user.l -or $item.l -eq $user.l) {
           $returnobject | Add-Member -MemberType NoteProperty -Name LocalITMail -Value $item.Mail 
           $returnobject | Add-Member -MemberType NoteProperty -Name LocationSufix -Value $item.'sAMAccount Abbrevations (5th and 6th characters)' 
           $returnobject | Add-Member -MemberType NoteProperty -Name Webproxy -Value $item.sec_WWGG_WebSecurity_Office 
        }
    }
    return $returnobject
    Write-output "$($this.TimeSTAMP)[Helper]::GetLocation -> Found Location from User" | Out-File $this.Workflow -Append
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM