2017-10-15 1 views
1

Ich habe Webservice, der in Azure hostet. Meine Datenbank ist in cosomos-db gespeichert. Ich möchte mehrere Dokumente über C# -Code nach einer Logik (nicht alle Dokumente in der Sammlung) löschen. Kann ich mehrere Dokumente über eine Abfrage löschen? (Löschen Dokument eins nach dem anderen, es ist nicht effizient)Löschen Sie mehrere Dokumente in Documentdb über Code

Tody ich über den folgenden Code löschen:

await _client.DeleteDocumentAsync(uri); 

Antwort

0

Sie haben jedes Dokument einzeln zu löschen.

Wenn Sie nicht mehrere Client-Aufrufe an die Cosmos-DB senden möchten, können Sie Ihre Mehrfachlöschung in einer gespeicherten Prozedur ausführen. Dies hat auch den Vorteil, dass alle Dokumentlöschungen transaktional behandelt werden: alles gelingt entweder atomar innerhalb der gespeicherten Prozedur oder schlägt fehl.

+0

Hallo, danke, können Sie bitte einen Beispielcode zum Erstellen von gespeicherten Prozedur mit Parametern, über C# -Code, zum Löschen mehrerer Dokumente nach einer Logik geben. Danke – MAK

+0

Es gibt genügend Dokumentation zum Erstellen gespeicherter Prozeduren mit Parametern. Ich schlage vor, dort anzufangen und dann eine neue Frage mit Details zum Löschen innerhalb einer gespeicherten Prozedur zu posten. Eine schnelle Suche nach '" documentdb bulk delete "' wird Ihnen helfen, Beispiele zu finden. –

+0

Siehe [hier.] (Https://github.com/Azure/azure-documentdb-js-server/tree/master/samples/stored-procedures) Es gibt auch andere Beispiele. –

Verwandte Themen