2017-07-06 3 views
0

Update: Ich habe den Emulator erneut heruntergeladen und eine Reparatur durchgeführt, und die Optionen werden wieder angezeigt. Aufgelöst.Gespeicherte Prozedur in DocumentDB Emulator erstellen

Kann mir bitte jemand sagen, ob es möglich ist, gespeicherte Prozeduren im DocumentDB Emulator zu erstellen? Ich weiß, dass ich es in der echten DocumentDB auf Azure machen kann. Allerdings kann ich das Skriptfenster nirgends im Emulator finden. Ich google herum und ich kann auch keine Antwort finden. Laut der Website sollte ich in der Lage sein, gespeicherte Procs mit dem Emulator zu erstellen. Sehr eigenartig.

+0

@Matias: So seltsam. Ich habe die 3 Punkte ausprobiert und ich hatte nur 2 Optionen zur Verfügung. Löschen Sie die Sammlung und das neue Dokument. Ich sehe nie die anderen Optionen, die du siehst. Ich habe meinen Emulator auch von der azurblauen Website heruntergeladen. –

Antwort

1

Wir können gespeicherte Prozedur mit dem Azure Cosmos DB Emulator erstellen, der folgende Code funktioniert gut auf meiner Seite.

Register gespeicherte Prozedur

DocumentClient client = new DocumentClient(
    new Uri("https://localhost:8081"), 
    "C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw=="); 
var TestSproc = new StoredProcedure 
{ 
    Id = "SayHello", 
    Body = @"function SayHello() { 
    var response = getContext().getResponse(); 
    response.setBody('hello');}" 
}; 
StoredProcedure createdStoredProcedure = await client.CreateStoredProcedureAsync(UriFactory.CreateDocumentCollectionUri("testdb", "testcoll"), TestSproc); 

Execute gespeicherte Prozedur

StoredProcedureResponse<object> result = await client.ExecuteStoredProcedureAsync<object>(
    UriFactory.CreateStoredProcedureUri("testdb", "testcoll", "SayHello")); 

result.Response.ToString(); 

Ergebnis

enter image description here

+0

Vielen Dank! Ich weiß, dass ich die DocumentDB API verwenden kann, um eine gespeicherte Prozedur zu erstellen. Ich habe mich gefragt, ob ich eine gespeicherte Prozedur im Emulator erstellen könnte. In der Zwischenzeit würde ich mit diesem Ansatz gehen. –

1

Sie können Stored Procedures, User Defined Functions & Trigger über die Benutzeroberfläche des Cosmos DB Emulator erstellen. Klicken Sie einfach auf die ... Punkte, die angezeigt werden, wenn Sie den Mauszeiger über die Sammlung bewegen, um das Kontextmenü zu öffnen oder mit der rechten Maustaste darauf zu klicken.

Azure Cosmos DB Emulator capture

+0

Vielen Dank! Würde es Ihnen etwas ausmachen, mir den Link zu zeigen, von dem Sie den Emulator heruntergeladen haben? Ich habe den Emulator von der Azure-Website heruntergeladen und irgendwie habe ich nur 2 Optionen erhalten, als ich auf die 3 Punkte geklickt habe. –

+0

Klicken Sie auf die Punkte in der Nähe des Sammlungsnamens? Haben Sie es mit der rechten Maustaste versucht? Von der [offiziellen Dokumentationsseite] heruntergeladen (https://docs.microsoft.com/en-us/azure/cosmos-db/local-emulator) :) –

+0

Ja. Es funktioniert jetzt. Vielen Dank –

Verwandte Themen