繁体   English   中英

使用“ 1”参数调用“ GetList”的异常

[英]Exception calling “GetList” with “1” argument

我尝试获取列表时遇到以下异常:

Exception calling "GetList" with "1" argument(s): "<nativehr>0x80070002</nativehr><nativestack></nativestack>"
At C:\Scripts\teaCvProfileUpdate\uploadTeaCvsToSharepoint.ps1:37 char:36
+ $cvDocumentLibrary = $spWeb.GetList <<<< ("/people/User Resumes/Forms/")
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : DotNetMethodException

以下是相关的三行代码(powershell):

$spSite = Get-SPSite $mySiteUrl
$spWeb = $spSite.OpenWeb("/")
$cvDocumentLibrary = $spWeb.GetList("/people/User Resumes/Forms/")

有人可以告诉我为什么会这样吗?

谢谢。 :)

尝试:

$spSite = Get-SPSite $mySiteUrl
$spWeb = $spSite.OpenWeb("people")
$cvDocumentLibrary = $spWeb.GetList("/people/User Resumes")

SPWeb.GetList()需要服务器相对URL到列表。 因此,在您的示例中,它将是:

$spSite = Get-SPSite -Identity $mySite;
$spWeb = $spSite.OpenWeb();
$myList = $spWeb.GetList($spWeb.ServerRelativeUrl + "/Lists/MyList");

我也遇到了同样的错误消息。 我发现当我尝试使用相对URL从父级/顶级站点打开列表时,由于返回的正斜杠太多,我遇到了错误。 使用Adam的代码的问题示例:如果$ mySite =“ https://site.com ”,则($ spWeb.ServerRelativeURL +“ / Lists / MyList”)返回“ // Lists / MyList”。 这不是有效的相对URL。 删除列表前面的正斜杠,下面的代码对我有用。

$spSite = Get-SPSite -Identity $mySite;
$spWeb = $spSite.OpenWeb();
$myList = $spWeb.GetList($spWeb.ServerRelativeUrl + "Lists/MyList"); 

这是我必须要做的工作:

$mySiteUrl = "https://snip.snip.snip/people"
$spSite = Get-SPSite -Identity $mySiteUrl
$spWeb = $spSite.OpenWeb()
$cvDocumentLibrary = $spWeb.GetList("/people/User Resumes")

感谢您的建议。 :)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM