Freigeben über


Verwenden von gekennzeichneten Feldern und Eigenschaftenfeldern

Gekennzeichnete Felder sind Nachrichtendaten, die einem bestimmten Zweck dienen. Sie verwenden diese Daten in erster Linie dazu, Entscheidungen zu treffen oder Daten in der Orchestrierung zu ändern.

Nachrichteneigenschaften sind entweder Daten (Inhalte der Nachricht selbst) oder "Metadaten" (Kontextinformationen über die Nachricht, wie z. B. Uhrzeitangaben und Routinginformationen). Sie können systemdefinierte Nachrichten- oder Transportkontexteigenschaften verwenden, oder Sie können eigene Eigenschaften festlegen, indem Sie in einem Eigenschaftsschema Verweise auf Schemafelder erstellen. Eigenschaften werden in Abonnements und Korrelationen verwendet.

  • Sie können ein Feld in einem Schema als distinguished Field oder Eigenschaftenfeld festlegen, indem Sie das Dialogfeld Eigenschaften höherstufen im Editor verwenden. Weitere Informationen finden Sie unter Höherstufen von Eigenschaften.

  • Sie können ein Feld in einem .NET-Typ durch Ergänzen mit dem Attribut DistinguishedField als gekennzeichnetes Feld oder mit dem Attribut Eigenschaft als Eigenschaft festlegen.

Verwenden von gekennzeichneten Feldern

Auf gekennzeichnete Felder wird durch den Pfad zum Feld in der Nachricht verwiesen. Der Nachrichtenname, die Namen von Datensätzen, die das Feld einschließen, und der Feldname selbst werden durch Punkte getrennt:

MyMessage.MyRecord.MySubrecord.MyDistinguishedField  

Verwenden von Eigenschaftenfeldern

Wenn einem Eigenschaftsschema ein Feld hinzugefügt wurde, kann in der Orchestrierung auf den zugehörigen Wert mit Code und in Filterausdrücken zugegriffen werden. Weitere Informationen zu Eigenschaftenschemas finden Sie unter Eigenschaftenschemas.

Hinweis

Nachrichteninhalte oder Dateneigenschaften sind im Wesentlichen Verknüpfungen zu den zugrunde liegenden Daten. Wenn Sie die Eigenschaft ändern, werden die Daten geändert und umgekehrt.

Auf Nachrichteneigenschaften wird durch den Nachrichtennamen verwiesen, gefolgt vom Namespace (dem Schema) und dem Eigenschaftsnamen in Klammern:

MyMessage(Invoice.PropertySchema.InvoiceID)  

Hinweis

Wenn Sie einen reservierten Schlüsselwort (keyword) als Namen eines Felds in einem Schema verwenden und das Feld höherstufen, indem Sie Schnellaufstufung auswählen, wird der Eigenschaftenname des Felds in __<Reserved-Schlüsselwort> geändert. (Der doppelte Unterstrich wird vor dem Eigenschaftsnamen hinzugefügt.) Wenn Sie diesen Eigenschaftsnamen dagegen in einem Orchestrierungsausdruck verwenden, wird beim Erstellen der Orchestrierung ein Compilerfehler angezeigt. Um diesen Fehler zu umgehen, müssen Sie das Zeichen "@" manuell vor dem doppelten Unterstrich hinzufügen. Beispiel:

MyMessage(Invoice.PropertySchema.@__Name) = "Product Name";

Eigenschaftensätze

Sie können außerdem alle Kontexteigenschaften einer Nachricht (Eigenschaftensatz) den Kontexteigenschaften einer anderen Nachricht zuweisen. Um einen Eigenschaftensatz zuzuweisen, fügen Sie einfach ein Sternchen in Klammern nach beiden Nachrichtennamen hinzu, so wie Sie eine Eigenschaft in Klammern setzen würden:

MyMessage2(*)=MyMessage1(*);  

Nach dem Zuweisen des Eigenschaftensatzes zu "MyMessage2" in diesem Beispiel enthalten alle Eigenschaften in "MyMessage2" die gleichen Werte wie die Eigenschaften in "MyMessage1".

Weitere Informationen

Heraufstufen von Eigenschaften
Verwenden von Filtern mit der Form „Nachrichtenempfang“
Verwenden von Nachrichten in Orchestrierungen
Info zu BizTalk-Nachrichtenkontexteigenschaften