[英]SharePoint: Move files from one document library to another using Web Services
[英]How to move document to different folder in SharePoint library with web services
我拼命地試圖將文檔庫中的文檔從一個文件夾移動到另一個文件夾(是的,在同一個庫中)。 所有這些都需要通過 Web 服務來完成。
我將 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 - 沒有運氣...
感謝您的任何提示...
所以最終我找到了一種使用 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();
我不認為這是可能的開箱即用的網絡服務。 您可以編寫自己的 Web 服務並將其部署到 sharepoint。
還有一種可能是使用 2 個 Web 服務:復制Web 服務和列表 Web 服務。 先做一份拷貝,然后用Lists服務刪除原來的。
是的,按照 Colin 的建議使用 Copy Web Service。 這是使用 OOB Web 服務的唯一方法。 但請注意,您將丟失所有作者和日期信息以及任何版本歷史記錄。 Copy WS 不保留此信息。
如果這是一個表演障礙,您可能需要查看CopyMove for SharePoint 。 它還附帶一個 Web 服務,允許您復制或移動文檔、項目和文件夾而不會丟失任何元數據。
Move documents and Folder
<Batch OnError='Continue' RootFolder='/Shared Documents/'>
<Method ID='1' Cmd='Move'>
<Field Name='ID'>1</Field>
<Field Name='FileRef'>/Shared Documents/MyFile.txt</Field>
<Field Name='MoveNewUrl'>/Shared Documents/MyFolder/MyFile.txt</Field>
</Method>
</Batch>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.