2009-08-20 11 views
3

Ich versuche verzweifelt, ein Dokument in einer Dokumentbibliothek von einem Ordner in einen anderen zu verschieben (ja, in der gleichen Bibliothek). All dies muss über Web-Services erledigt werden.Wie verschiebe ich Dokument in anderen Ordner in SharePoint-Bibliothek mit Web-Services

Ich bin mit Updatelist Methode mit batching XML wie folgt aus:

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

I verschiedenen Bereichen statt ServerUrl über die Aktualisierung versucht haben - keiner mit etwas Glück ...

Vielen Dank für alle Hinweise ...

+0

[? Wie kann ein Endbenutzer einen Ordner mit dem Web-Interface zu Sharepoint Server 2010 verschieben] (http://sharepoint.stackexchange.com/q/ 46853/11050) –

Antwort

1

So fand ich schließlich einen Weg, um dies zu umgehen, indem Sie WebDAV verwenden. Und entschuldige, dass die Frage falsch gestellt wurde - ich brauchte wirklich keine Webdienste, sondern alles, was für mich von einer entfernten ASP.NET-Site aus verfügbar war. Hier ist der (einfache) Code, um eine Datei zu haben, bewegt:

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

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

Behält diese Methode Autor, Datum usw. bei? –

1

Ich glaube nicht, dass dies mit den Out-of-the-Box-Webdiensten möglich ist. Sie sollten jedoch Ihren eigenen Webservice schreiben und diesen auf Sharepoint bereitstellen.

Was ist auch eine Möglichkeit, 2 Web-Dienste zu verwenden: die copy Web-Service und die Listen-Web-Service. Führen Sie zunächst eine Kopie aus und löschen Sie dann das Original mit dem Listendienst.

+0

Obwohl es nicht das ist, was ich hören wollte, sieht es offensichtlich nach der Realität aus ...: -O – Rashack

1

Ja, verwenden Sie den Copy Web Service, wie Colin es vorschlägt. Dies ist der einzige Weg mit den OOB Web Services. Aber seien Sie sich bewusst, dass Sie alle Autoren- und Datumsinformationen sowie den Versionsverlauf verlieren werden. Das Copy WS speichert diese Information nicht.

Wenn dies ein Show-Stopper ist, sollten Sie sich vielleicht einen Blick auf CopyMove for SharePoint werfen. Es wird außerdem mit einem Webdienst geliefert, mit dem Sie Dokumente, Elemente und Ordner ohne Verlust von Metadaten kopieren oder verschieben können.