Die Grundkonzepte von Lenkern
Geschrieben vonOssi Galkin Vor über einer Woche aktualisiertTable of contentsEinführung in den Lenker
Da es wichtig ist, Parameter für verschiedene Elemente in Frends-Prozessen bereitzustellen, müssen wir verstehen, wie man einfach Referenzen für verschiedene Variablen oder C#-Ausdrücke in das Textfeld einfügt, das als Parameter oder Eingabe fungiert. Frends bietet diesen Mechanismus mit der standardisierten Handlebar-Notation, bei der Sie Referenzen oder C#-Ausdrücke übergeben können, die als Zeichenfolge in doppelten Klammern {{ }} innerhalb von Parametern vom Typ Text, JSON, XML oder SQL resultieren. Unter der Haube in Frends wird das resultierende Objekt in der Handlebar mit der Methode .ToString() aufgerufen. Dies bedeutet auch, dass die in Handlebars ausgeführten C#-Ausdrücke ein Objekt und nicht void zurückgeben müssen.
Beispielsweise könnten wir die folgenden Handlebars als Task-Parameter haben:
Referenzieren eines Verzeichnisses aus Umgebungsvariablen
{{#env.Share.DirectoryOfCats}}\foo.txt
Einfügen des aktuellen Datums in Text mit C#-Ausdruck
Heute ist {{DateTime.Now.ToString("dd.MM.yyyy")}}
Erstellen eines Dateinamens mit Variablenreferenz und C#-Ausdruck
export_{{#var.objectName }}_{{DateTime.Now.ToString("ddMMyyyyHHmmssfff")}}.xml
Bilden eines einfachen JSON mit Variablenreferenzen
{ "temperature": "{{#var.temperature}}", "unit": "{{#var.unit}}" }
C#-Ternäroperation zum Abschneiden einer Variablen mit drei Punkten für eine Texteingabe, wenn sie länger als 10 Zeichen ist
{{#var.variable.Length > 10 ? #var.variable.Substring(0,7) + "..." : #var.variable}}
Wie wir sehen, gibt es viele verschiedene Anwendungsfälle für die Verwendung von Handlebars, aber gleichzeitig ist es wichtig, die verschiedenen Variablentypen und zurückgegebenen Objekte aus C#-Ausdrücken zu verstehen. Wie gesagt wird die .ToString()-Methode des resultierenden Objekts von Handlebar aufgerufen, wenn das Element im Prozess ausgeführt wird. Dies kann andererseits zu unerwünschten Ergebnissen führen, wenn in Handlebars ein Objekt verwendet wird, das keine erwartete String-Darstellung zurückgibt.
Die Standardobjektdarstellungen in den UI-Ergebnissen können auch irreführend sein, da Frends UI C#-Objekte in das JSON-Format serialisiert.
Wenn wir beispielsweise einer Variablen den Ausdruckneue Zeichenfolge[]{"erster", "zweiter", "dritter"}, würden wir die folgende serialisierte Ergebnisdarstellung in der Benutzeroberfläche sehen:
Wenn wir nun diese Variable übergeben würdenAnordnungin den Handlebars in eine andere Variable, würden wir den Typ des Arrays erhalten, da es sich um das Ergebnis des .ToString()-Methodenaufrufs des Arrays handelt und nicht um die serialisierte Darstellung.
Wenn wir dieses Array beispielsweise als Parameter für einen HTTP-Anforderungstext verwenden möchten, sollten wir dieses Objekt serialisieren oder JArray verwenden, da diese beim Aufruf mit der Methode .ToString() als Ergebnis des Handlebars JSON-Strings zurückgeben würden.
Wenn Sie komplexere C#-Ausdrücke oder Referenz-Handlebars erstellen, achten Sie auf die Rückgabetypen in den C#-Ausdrücken oder Variablenreferenzen.
Als nächstes werden wir uns einige Anwendungsbeispiele für Handlebars ansehen.
Der nächste Artikel istEinführung in die Json.Handlebars-Aufgabe
Verwandte ArtikelJSON-zu-JSON-Mapping mit Handlebars TaskEinführung in die Verwendung von C# in FrendsEinführung in die Json.Handlebars-AufgabeBeispiele für Lenker-AnwendungsfälleEinführung in JSON-Objekte