Batch-Element in der Sharepoint-Listenelemente Löschen, wenn Sie nicht wissen, die ID
Möchte ich löschen eines Elements in einer Liste, wenn es passt einige Kriterien mit UpdateListItems-web-service. Ich weiß nicht, die ID des Listenelements zurück, das ich löschen möchte, aber kennen die Kriterien.
Zum Beispiel in SQL könnte ich tun:
DELETE FROM listName WHERE LastName='Bauer' AND FirstName='Jack'
Wie würden Sie schreiben eine Batch-Element, um dies zu tun?
Update
Wäre es so etwas?
<Batch PreCalc='TRUE' OnError='Continue'>
<Method ID='1' Cmd='Delete'>
<Field Name='LastName'>Bauer</Field>
<Field Name='FirstName'>Jack</Field>
</Method>
</Batch>
Ist die ID für die Methode oder die ID des Dings, das Sie löschen möchten?
Update
Habe ich versucht den folgenden code, und der Fehler, der zurückgegeben wird,
Invalid URL Parameter
The URL provided contains an invalid Command or Value. Please check the URL again.
Meine vermute ist, dass es nicht möglich ist ohne die ID...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Als Ergänzung zu ChrisB Antwort (Formatierung, die eine CAML-Abfrage, die in einem Kommentar scheint nicht zu funktionieren), Sie würde die Abfrage so etwas wie dieses:
(dies ist das Objekt, Modell-Spezifikation, aber es reicht natürlich in die webservices-Aufruf)
Dann würden Sie eine Schleife durch die listitems und bauen Sie Ihre Stapel.
Diese sieht nicht möglich.
Mein Weg dies war die Abfrage der Liste und bekommen die id ' s. Schleife für die Antwort ziehen die id ' s dann erstellen Sie eine Methode für jede ID, um es zu löschen.
Ähnlich zu get list item zurückgegeben, die von der Sharepoint-2010-Objektmodell verwendet werden kann, die in C# entsprechende Wert des Schlüssels Knoten in xml, die wir haben, um loszuwerden, dass zusätzliche Zeichen angebracht, die auf position 1 in der xml. Dies kann wie folgt erledigt werden:
//Code zum entschlüsseln von XML-string zurückgegeben, die von SharePoint Server 2010 object model-Liste auswählen. - Mit freundlicher Genehmigung - Rajiv Kapoor - ideale.co.in. Ansicht http://www.ideals.co.in/estore/code.php für die komplette Lösung.
Ich bin nicht so vertraut mit der Verwendung der web-services, aber ich nehme an es ist eine für die Suche. Mithilfe der API erstellen Sie eine SPQuery und CAML verwenden, um die Liste der Elemente, die Sie entfernen wollte.