无法使用Sharepoint 2010索引到null array.error

时间:2012-01-24 06:28:19

标签: powershell

我正在尝试使用下面的脚本从列表中获取一些数据。 我正在将它用于我的Sp 2007并且它工作但是当在SP 2010下使用它时我得到了错误。 有任何想法吗。 感谢

Cannot index into a null array.
At \64284ccd-adc9-4ae4-be4c-0fcd744be7c1.ps1:12 char:19
+     Title = $item[ <<<< "Title"]
    + CategoryInfo          : InvalidOperation: (Title:String) [], RuntimeException
    + FullyQualifiedErrorId : NullArray



[System.reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint")
$site    =     new-object Microsoft.SharePoint.SPSite("http://mysite/Intranet")                                                       

$web     = $site.rootweb                                                                                               
$list    =    $web.Lists["Comms"]

$Responses = @()


foreach ($item in $list.items) {
#$list.Items | foreach {
$obj = New-Object PSObject -Property @{
    Title = $item["Title"]

}
$obj |select-object Title
$Responses += $obj
}
Write-Host $Response

1 个答案:

答案 0 :(得分:1)

调试PowerShell通常涉及检查中间变量的值。在这种情况下,从错误中可以明显看出$ item为null。这可能意味着$ list.items是$ null。这意味着items属性为null或更有可能$ list为null。你可以检查$ list是否为null:$list -eq $null。如果为null,请确保$ web变量不为null。如果不是,则枚举像$web.Lists这样的网络列表,看看是否显示“通信”。