我已经阅读了有关此错误发生原因的各种内容,从连接到365 SharePoint时的错误导入到Load is a Generics方法。问题是更改导入没有帮助,我无法理解为什么它或Generics会在我的脚本Load工作的其他地方得到答案。
$rootWeb = $clientContext.Web
$childWebs = $rootWeb.Webs
$clientContext.Load($rootWeb)
$clientContext.Load($childWebs)
$clientContext.ExecuteQuery()
function processWeb($web)
{
$lists = $web.Lists
$clientContext.Load($web)
$clientContext.Load($lists)
$clientContext.ExecuteQuery()
Write-Host "Web URL is" $web.Url
foreach ($list in $lists)
{
if ($list.BaseTemplate -eq 101)
{
Write-Host "`t" $list.Title
}
}
$subs = $web.Webs
$clientContext.Load($subs)
$clientContext.ExecuteQuery()
processWeb($subs)
}
功能外的负载工作正常。
删除函数内的最后4行,函数内的负载工作正常。
使用查找子站点的行和递归调用,它会失败,并在函数内第一次调用Load时抛出错误。
只取出递归调用,然后运行。
那我有什么问题?
Get-Host返回版本5.1 ........
此致
汤姆