OnEvent 元素描述映射到封闭 BAM 活动的一个真实事件。
格式
元素 OnEvent
包含子元素,这些子元素指定事件筛选器、相关 ID 以及(可选)要更新的数据、引用数据和继续标记。
属性
特性名 | 说明 |
---|---|
名称 | 此事件的用户定义名称。 |
源 | 事件源在 EventSource 元素中显示的名称。 |
IsBegin | 指示事件是否为新 BAM 活动的开始的布尔值, true () false () 。 |
IsEnd | 指示事件是否为 BAM 活动结束的布尔值, true () (false ) 。 |
子元素
执行状态 | 说明 |
---|---|
“筛选器” | 提供了一种为事件添加特定限制条件的方法。 |
CorrelationID | 指定关联 ID(活动实例 ID)。 |
ContinuationToken | 指定继续符,它是将为同一活动实例做出贡献的未来事件使用的一个关联 ID。 |
更新 | 指定要从事件中提取并导入到 BAM 活动的数据。 |
参考 | 添加与 BAM 活动的关系。 |
备注
示例
以下示例演示 WF 的典型 OnEvent 块:
<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>
此示例演示 WCF 服务的典型 OnEvent 块:
<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>