2016-09-09 24 views
0

我想在C#中使用.NET CSOM在線獲取SharePoint上的文件的父列表。下面的代碼工作正常,當我從獨立的c#應用程序測試它。「指定的對象不屬於列表」使用CSOM的錯誤

但是,當我通過C++的com互操作調用完全相同的方法,使用相同的參數時,我得到一個異常,「指定的對象不屬於列表」。 ExecuteQuery後拋出異常()

但我知道它的確如果我用完全相同的URL調用方法「/ sites/develop_apps/Shared Documents/subway/heynow(000640-9-9-2016 9- 53-31 AM).PDF「在獨立的c#應用程序中,我也不例外。而「GetFileByServerRelativeUrl」似乎工作正常。無論如何它不會拋出異常。

我已閱讀有關類似錯誤的文章,他們似乎有可能與URL有關。但我不明白爲什麼相同的參數在一種情況下工作,而不是另一種情況。

Microsoft.SharePoint.Client.File thisFile =m_clientContext.Web.GetFileByServerRelativeUrl(fileRelativeUrl); 
ListItem item = thisFile.ListItemAllFields; 
m_clientContext.Load(item.ParentList); 
m_clientContext.ExecuteQuery(); 

錯誤的提琴手蹤跡顯示。

{ 「SchemaVersion」: 「15.0.0.0」, 「LibraryVersion」: 「16.0.5701.1202」, 「ERRORINFO」:{ 「的ErrorMessage」: 「指定的對象不屬於列表」,」 「TraceCorrelationId」:「c616a29d-90ab-3000-b1de-17538058f3e4」,「ErrorCode」: - 2146232832,「ErrorTypeName」:「Microsoft.SharePoint.SPException」 },「TraceCorrelationId」:「c616a29d-90ab -3000-b1de-17538058f3e4「

+0

啊這裏有一些說明。我的測試應用中客戶端上下文的URL屬性顯示://mysite.sharepoint.com/sites/develop_apps/。我的生產測試失敗 //mysite.com –

+0

似乎是這樣。不知何故,我的製作應用程序在創建客戶端上下文對象時沒有設置正確的URL。 –

回答

1

通過比較工作應用程序的ClientContext.Url字段和失敗的生產測試,我注意到這些網址是不同的。

我的測試工作有一個url「https://mysite.sharepoint.com/sites/develop_apps/」。

我的生產測試真實辜負了「https://mysite.sharepoint.com

,我在做我名單中所有的操作在圖書館關的「https://mysite.sharepoint.com/sites/develop_apps/

做的工作對名單時,我想,你需要更多的在創建關於url的clientContext時具體。

相關問題