Freigeben über


Verarbeiten von Auflistungen in Regeln

In einigen Szenarien müssen Regeln möglicherweise einzeln auf Grundlage aller Elemente in einer Auflistung ausgewertet werden. Zum Durchlaufen der Auflistung stehen verschiedene Möglichkeiten zur Verfügung, beispielsweise folgendes Regelmuster:

Rule 1 (Priority = 2)  // always execute this rule once to create the enumerator
IF 1==1 
THEN this.enumerator = this.myCollection.GetEnumerator()

Rule 2 (Priority = 1) 
IF this.enumerator.MoveNext()
THEN this.currentInstance = this.enumerator.Current

Rules 3-N (Priority = 0)
.... // Additional rules written against this.currentInstance

Rule N+1 (Priority = -1)
// can be any condition as long as it is evaluated every time;
// this.currentInstance will be evaluated each time this.currentInstance changes, whereas 
// "1==1" would only be evaluated once.
IF this.currentInstance == this.currentInstance  
    
THEN ...
         Update("this/enumerator") //this will cause Rule 2 to be reevaluated
ELSE ...
          Update("this/enumerator")

Siehe auch

Referenz

RuleSet

Konzepte

Verwenden von RuleSets in Workflows
Regelauswertung in RuleSets

Footer image

Copyright © 2007 by Microsoft Corporation. Alle Rechte vorbehalten.