Einführung in das Erstellen einer JSON-Nachricht – ein nicht ganz einfaches Beispiel

Ossi Galkin avatarGeschrieben vonOssi Galkin Vor über einer Woche aktualisiertTable of contents

So erstellen Sie eine JSON-Nachricht

In diesem Beispiel erfahren Sie, wie Sie aus den Ergebnissen einer SQL-Abfrage eine JSON-Nachricht erstellen.

Dieses Beispiel verwendet denselben Aufbau wie das Beispiel „Neue XML-Nachricht erstellen“.

SehenFreunde GitHub für mehrfür weitere Informationen zur MicrosoftSQL ExecuteQuery-Aufgabe.

Die MicrosoftSQL ExecuteQuery-Aufgabe gibt einen JToken namens Data zurück, der zwei JObjects enthält.
In diesem Beispiel konzentrieren wir uns auf das erste Objekt im JToken und zwei spezifische Eigenschaften, die im Bild unten mit einem Pfeil markiert sind.

Um aus dem Ergebnis der MicrosoftSQL ExecuteQuery-Aufgabe eine JSON-Nachricht zu erstellen, verwenden wir die Foreach-Aufgabe und eine Low-Code-Referenz mit Punktnotation.

Bei genauerer Betrachtung der Konfiguration der Aufgabe „JSON-Nachricht senden“ können wir erkennen, dass das Nachrichtenfeld die JSON-Nachricht enthält, die wir formulieren. Das Nachrichtenfeld ist auf den Typ JSON eingestellt, und der JSON-Eingabemodus ermöglicht es Ihnen, gültiges JSON als Eingabe anstelle von frei formuliertem Text einzugeben.

sehenFreunde GitHubfür weitere Informationen zu den Web-RestRequest-Aufgaben.

Beim Senden der REST-Anfrage füllt Frends die Low-Code-Referenz{{#var.product.ProduktID}}durch den tatsächlichen Wert, der in unserem Beispielfall „680“ ist.

Durch Anwenden der gleichen Logik lautet die vollständige JSON-Nachricht der HTTP-Anforderung mit aufgefüllten Daten:

Beispielprozess: Erstellen einer JSON-Nachricht mit Code-Element

Dies ist ein einfacher Beispielprozess, der mithilfe eines Codeelements eine JSON-Nachricht erstellt. Er beginnt mit einer SQL-Abfrage für Produktinformationen und einem Foreach-Element, das die von der Abfrage zurückgegebenen Produkte durchläuft. Für jedes Produkt werden zwei JSON-Nachrichten erstellt und an einen REST-Endpunkt gesendet. Der Prozess verfügt über zwei parallele Pfade, die die Nachrichtenerstellung und -übermittlung ausführen.

Im folgenden Modul finden Sie die Konfigurationsdetails für jedes im Prozess verwendete Element. Weiter unten finden Sie Screenshots, die die Prozessausführung zeigen. Studieren Sie diese Optionen und testen Sie sie in Ihrer Frends-Umgebung, falls Sie Zugriff darauf haben.

Elementkonfiguration

Unten finden Sie Screenshots der Konfiguration für jedes der in diesem Prozess verwendeten Elemente.

SQL ExecuteQuery

Im Beispielprozess ruft die Microsoft ExecuteQuery-Aufgabe nur 2 Produkte aus der Tabelle ab. Die Verbindungszeichenfolge wird in einer Umgebungsvariable gespeichert und ist ausgeblendet. In der Konfigurationsabbildung sehen Sie ein Beispielergebnis der Abfrage mit den Details eines Produkts.

Microsoft ExecuteQuery FreundesaufgabeGitHub-Seite.

Für jedes Produkt

Das Foreach-Element durchläuft eine Schleife über die beiden abgefragten Produkte.

Nachricht zuweisen

Dieses Codeelement erstellt eine einfache JSON-Nachricht als JObject.

Beachten Sie, dass auf die Produktattribute mit einem#WarReferenz. Ein weiterer Hinweis ist ein einfaches C#-Anweisungsbeispiel, das das Date-Attribut festlegt.

Sie können in der Anweisung mit verschiedenen C#-Anweisungen experimentieren und beispielsweise alle Buchstaben des Produktnamens in Groß- oder Kleinbuchstaben ändern.

Web-HTTP-Anforderung

Eine andere Nachricht zuweisen

Dieses Codeelement erstellt eine weitere Nachricht mit JObject- und JArray-Instanzen.

Web-HTTP-Anforderung 2

Ergebnis der Prozessausführung

Hier ist eine Übersicht über die Prozessausführung.

Da der Microsoft ExecuteQuery-Task als Ergebnis zwei Produkte zurückgibt, wird der Foreach-Task zwei Mal ausgeführt.

Die Ergebnisse der Web-RESTRequest-Aufgabe zeigen ein Beispiel für das erste Foreach-Iterationsergebnis.

Ergebnis der Web-HTTPRequest-Ausführung

Ausführungsergebnis von Web HTTPRequest 2

Der nächste Artikel istEinführung in das Erstellen von Nachrichten mit StringBuilder.


Verwandte ArtikelEinführung in JSON-ObjekteEinführung in die Verwendung von LINQ mit JSON-ObjektenEinführung in das Erstellen von Nachrichten mit StringBuilderEinführung in das Erstellen einer neuen XML-Nachricht – ein einfaches BeispielBeispiel zum Erstellen eines verknüpften Prozesses