2009-08-20 47 views
3

我拼命嘗試將文檔庫中的文檔從一個文件夾移動到另一個文件夾(是的,在同一個庫中)。所有這些都需要通過Web服務完成。如何使用Web服務將文檔移動到SharePoint庫中的其他文件夾

我使用UpdateListItems法配料XML這樣的:

<Batch> 
<Method ID="1" Cmd="Update"> 
    <Field Name="ID">14</Field> 
    <Field Name="ServerUrl">personal/blabla/Documents/CT-5/image.jpg</Field> 
</Method> 
</Batch> 

我曾嘗試更新上述各個領域,而不是SERVERURL - 沒有運氣...

感謝您的任何提示?

+0

[?怎樣才能最終用戶移動文件夾與網絡界面到SharePoint Server 2010(http://sharepoint.stackexchange.com/q/ 46853/11050) – 2012-10-02 05:43:12

回答

1

所以最終我找到了一種通過使用WebDAV解決這個問題的方法。對不起,這個問題提出了錯誤的 - 我真的不需要Web服務,而是可以從遠程ASP.NET站點使用的任何東西。這裏的(簡單)的代碼有一個文件移動:

WebRequest lRequest = WebRequest.Create(sourceUrl); 
lRequest.Credentials = CredentialCache.DefaultCredentials; 
lRequest.Method = "MOVE"; 

lRequest.Headers.Add("Destination", targetUrl); 
var lResponse = lRequest.GetResponse(); 
+0

這種方法是否保留作者,日期等? – 2013-09-10 17:09:26

1

我不認爲這是開箱即用的Web服務可能的。儘管如此,你應該編寫自己的Web服務並將其部署到共享點。

還有一種可能性是使用2種Web服務:copy Web服務和列表Web服務。首先進行復制,然後使用列表服務刪除原件。

+0

雖然它不是我想要明顯聽到它看起來像現實...:-O – Rashack 2009-08-26 07:24:14

1

是的,請使用Colin建議的複製Web服務。這是OOB Web服務的唯一途徑。但請注意,您將失去所有作者和日期信息以及任何版本歷史記錄。複製WS不保留這些信息。

如果這是一個表演塞,你可能想看看CopyMove for SharePoint。它還附帶一個Web服務,允許您在不丟失任何元數據的情況下複製或移動文檔,項目和文件夾。

相關問題