Partage via


Élément OnEvent de l'intercepteur

L’élément OnEvent décrit un événement réel mappé à l’activité BAM englobante.

Format

L’élément OnEvent contient des éléments enfants qui spécifient un filtre d’événements, l’ID de corrélation et éventuellement les données à mettre à jour, les données de référence et un jeton de continuation.

Attributs

Nom de l’attribut Description
Nom Nom défini par l'utilisateur pour cet événement.
Source Nom de la source de l’événement tel qu’il apparaît dans un élément EventSource .
IsBegin Valeur booléenne indiquant si l’événement est le début d’une nouvelle activité BAM (true) ou non (false).
IsEnd Valeur booléenne indiquant si l’événement est la fin d’une activité BAM (true) ou non (false).

Éléments enfants

État de l'exécution Description
Filtrer Fournit une méthode permettant de restreindre l'événement à des critères spécifiques.
CorrelationID Indique l'ID de corrélation (l'ID de l'instance d'activité).
ContinuationToken Spécifie le jeton de liaison, c'est-à-dire un ID de corrélation utilisé par des événements futurs qui contribueront à la même instance d'activité.
Update Spécifie les données à extraire de l'événement et à importer dans l'activité BAM.
Référence Ajoute une relation à une activité BAM.

Notes

Exemple

L’exemple suivant montre un bloc OnEvent classique pour WF :

<ic:OnEvent Name="BeginAct" IsBegin="true" Source="ResWF">  
  <ic:Filter>  
    <ic:Expression>  
      <wf:Operation Name="GetActivityName"/>  
      <ic:Operation Name="Constant">  
        <ic:Argument>FoodAndDrinksPolicy</ic:Argument>  
      </ic:Operation>  
      <ic:Operation Name="Equals"/>  
      <wf:Operation Name="GetActivityEvent"/>  
      <ic:Operation Name="Constant">  
        <ic:Argument>Closed</ic:Argument>  
      </ic:Operation>  
      <ic:Operation Name="Equals"/>  
      <ic:Operation Name="And"/>  
    </ic:Expression>  
  </ic:Filter>  
  <ic:CorrelationID>  
    <ic:Expression>  
      <wf:Operation Name="GetContextProperty">  
        <wf:Argument>InstanceId</wf:Argument>  
      </wf:Operation>  
    </ic:Expression>  
  </ic:CorrelationID>  
  <ic:Update DataItemName="StartOrderProcessing" Type="DATETIME">  
    <ic:Expression>  
      <wf:Operation Name="GetContextProperty">  
        <wf:Argument>EventTime</wf:Argument>  
      </wf:Operation>  
    </ic:Expression>  
  </ic:Update>  
  <ic:Update DataItemName="FoodItem" Type="NVARCHAR">  
    <ic:Expression>  
      <wf:Operation Name="GetWorkflowProperty">  
        <wf:Argument>foodItem</wf:Argument>  
      </wf:Operation>  
    </ic:Expression>  
  </ic:Update>  
</ic:OnEvent>  

Cet exemple montre un bloc OnEvent classique pour le service WCF :

<ic:OnEvent IsBegin="true" IsEnd ="false" Name ="AuthorizationRequestService" Source="ESCreditCardService">  
  <ic:Filter>  
    <ic:Expression>  
      <wcf:Operation Name="GetServiceContractCallPoint"/>  
      <ic:Operation Name ="Constant">  
        <ic:Argument>ServiceRequest</ic:Argument>  
      </ic:Operation>  
      <ic:Operation Name ="Equals"/>  
      <wcf:Operation Name="GetOperationName" />  
      <ic:Operation Name="Constant">  
        <ic:Argument>AuthorizeWithDataContract</ic:Argument>  
      </ic:Operation>  
      <ic:Operation Name ="Equals" />  
      <ic:Operation Name ="And" />  
    </ic:Expression>  
  </ic:Filter>  
  <ic:CorrelationID>  
    <ic:Expression>  
      <ic:Operation Name="Constant">  
        <ic:Argument>ServiceRequest</ic:Argument>  
      </ic:Operation>  
    </ic:Expression>  
  </ic:CorrelationID>  
  <ic:Update DataItemName="Name" Type="NVARCHAR">  
    <ic:Expression>  
      <wcf:Operation Name="XPath">  
        <wcf:Argument>//s:Body/ccservice:*/ccservice:creditCard/creditcard:FirstName</wcf:Argument>  
      </wcf:Operation>  
      <wcf:Operation Name="XPath">  
        <wcf:Argument>//s:Body/ccservice:*/ccservice:creditCard/creditcard:LastName</wcf:Argument>  
      </wcf:Operation>  
      <ic:Operation Name ="Concatenate"/>  
    </ic:Expression>  
  </ic:Update>  
</ic:OnEvent>  

Dans cette section

Voir aussi

Structure d’un fichier de configuration d’intercepteur