Sharepoint 2010中的<nativehr> 0x80070002 </ nativehr>

dav*_*nta 5 sharepoint-2010

我最近从Sharepoint 2007升级到2010.我有一个将pdfs插入sharepoint的Windows服务.它在2007年运行良好.当我迁移到2010年时,我开始收到以下间歇性错误:

<nativehr>0x80070002</nativehr>

at Microsoft.SharePoint.Library.SPRequestInternalClass.GetMetadataForUrl(String bstrUrl, Int32 METADATAFLAGS, Guid& pgListId, Int32& plItemId, Int32& plType, Object& pvarFileOrFolder) at 

Microsoft.SharePoint.Library.SPRequest.GetMetadataForUrl(String bstrUrl, Int32 METADATAFLAGS, Guid& pgListId, Int32& plItemId, Int32& plType, Object& pvarFileOrFolder) at Microsoft.SharePoint.SPWeb.GetList(String strUrl)
Run Code Online (Sandbox Code Playgroud)

这是令人讨厌的代码行:

SPList parentList = web.GetList(url);
Run Code Online (Sandbox Code Playgroud)

奇怪的是,这只会偶尔失败.我实际上已经包裹了这一行循环,如果它失败了,我等一下,然后再尝试获取列表.通常在几次尝试之后,GetList将成功.

由于它不容易重复,我正在寻找任何我可能能够追踪的线索.

从谷歌搜索,"推荐"修复是将任何.GetList(...)调用更改为SPWeb.Lists [".."];

但是,由于2007年的性能打击,我摆脱了这一点(.GetList(...)的性能比SPWeb.Lists ["..."]更好

有什么建议?

谢谢!
戴夫

Ale*_*xey 0

如果您首先检索与相关 url 相关的 SPFolder 或 SPFile,也许您可​​以更好地理解该错误。检查 .GetFile(...).Exists 和 .GetFolder(...).Exists。因此,您还可以获得 ParentList 属性。