Freigeben über


Richtlinienaktivität in .NET Framework 4

Dieses Thema gilt für Windows Workflow Foundation 4.

Die Policy4-Aktivität ermöglicht die Verwendung von Windows Workflow Foundation in .NET Framework, Version 3.5 (WF 3.5) RuleSet-Objekten direkt in Windows Workflow Foundationin .NET Framework, Version 4 (WF 4), indem das zu WF 3.5 gehörende Regelmodul verwendet wird. Mit dieser Aktivität können Sie RuleSet für WF 3.5 erstellen und ausführen. Weitere Informationen über zum WF 3.5-Regelmodul als Bestandteil von Windows Workflow Foundation finden Sie in der Einführung in das Windows Workflow Foundation-Regelmodul. Weitere Informationen zum Migrieren von Regeln in WF in .NET Framework 4 finden Sie unter Migrationsanleitung.

Dd797584.Important(de-de,VS.100).gif Hinweis:
Die Beispiele sind möglicherweise bereits auf dem Computer installiert. Überprüfen Sie das folgende (standardmäßige) Verzeichnis, bevor Sie fortfahren.

<Installationslaufwerk>:\WF_WCF_Samples

Wenn dieses Verzeichnis nicht vorhanden ist, rufen Sie Windows Communication Foundation (WCF) and Windows Workflow Foundation (WF) Samples for .NET Framework 4 auf, um alle Windows Communication Foundation (WCF)- und WF-Beispiele herunterzuladen. Dieses Beispiel befindet sich im folgenden Verzeichnis.

<InstallDrive>:\WF_WCF_Samples\WF\Scenario\ActivityLibrary\Policy4

Projekte in diesem Beispiel

Projektname Beschreibung Hauptdateien

Policy4

Enthält die Policy4-Aktivität und den zugehörigen WF-Designer.

Policy4.cs: Policy4-Aktivitätsdefinition.

PolicyDesigner.xaml: Benutzerdefinierter Designer für die Policy4-Aktivität. Er verwendet den Regeln-Editor (RuleSetDialog-Klasse) des WF-Regelmoduls.

ImperativeCodeClientSample

Beispielclientanwendung, die einen Workflow mithilfe einer Policy4-Anwendung mit imperativem C#-Code konfiguriert und ausführt (kein WF-Designer wird verwendet).

ApplyDiscount.rules: Datei mit WF-Regeldefinitionen.

Order.cs: Typ, der eine Kundenbestellung darstellt. Regeln werden auf Objekte dieses Typs angewendet.

Program.cs: Konfiguriert und führt einen Workflow aus, der über eine Policy4-Aktivität verfügt, mit der in "ApplyDiscount.rules" definierte Regeln auf Instanzen von Order-Objekten angewendet werden.

App.config: Konfigurationsdatei mit dem Pfad der Regeldatei.

DesignerClientSample

Beispielclientanwendung, die einen Workflow mithilfe einer Policy4-Anwendung im WF-Designer konfiguriert und ausführt.

Sequence1.xaml: Sequenzieller Workflow, der eine Policy4-Aktivität verwendet, um Regelauswertungen durchzuführen.

Program.cs: Führt eine Instanz des in "Sequence1.xaml" definierten Workflows aus.

Policy4-Aktivität

Die Policy4-Aktivität ist eine Klasse, die von der NativeActivity-Klasse abgeleitet wird, die es Workflows ermöglicht, RuleSets von WF auszuführen. Das folgende Codebeispiel ist eine vereinfachte Definition des öffentlichen Objektmodells der Aktivität.

public class Policy4Activity<TResult>: NativeActivity<TResult>
{
    public RuleSet RuleSet

    [IsRequired]
    public InArgument Input

    public OutArgument<ValidationErrorCollection> ValidationErrors
}

Eigenschaft Beschreibung

RuleSet

Die RuleSet-Klasse von WF für .NET Framework 3.5, die ausgewertet werden soll, wenn die Aktivität ausgeführt wird.

TargetObject

Das Objekt, für das die Regeln in der RuleSet-Klasse ausgewertet werden.

ValidationError

Die Liste der Validierungsfehler, die vom WF-Regelmodul für .NET Framework 3.5 zurückgegeben wurden, als die RuleSet-Klasse vor der Ausführung für das Zielobjekt überprüft wurde.

Policy4-Aktivitätsdesigner

Der Policy4-Designer ermöglicht es, eine Policy4-Aktivität zu konfigurieren, ohne Code zu schreiben. Nach dem Erstellen der Projektmappe befindet sich dies im Abschnitt Microsoft.Samples.Activities.Rules.

Mit dem WF-Designer können Sie ein Zielobjekt und ein RuleSet konfigurieren. Wenn auf die Schaltfläche Regelsatz bearbeiten geklickt wird, wird die RuleSetDialog-Klasse von WF für .NET Framework 3.5 angezeigt. Dieses Dialogfeld ist der neu gehostete .NET Framework 3.5-Regel-Editor. Verwenden Sie den Editor, um die Regeln zu erstellen und zu bearbeiten, die die Policy4-Aktivität ausführt.

Verwenden dieses Beispiels

Zum Ausführen dieses Beispiels ist keine spezielle Einrichtung erforderlich. Öffnen Sie einfach die Projektmappe in Visual Studio, und drücken Sie F5, um die Anwendung auszuführen.

Dieses Beispiel umfasst zwei Clientanwendungen: ImperativeCodeClientSample und DesignerClientSample. Der ImperativeCodeClientSample-Client zeigt, wie die Policy40-Aktivität mit imperativem C#-Code konfiguriert und ausgeführt wird. DesignerClientSample zeigt, wie die Policy4-Aktivität mithilfe des Designers konfiguriert und ausgeführt wird.

So führen Sie die ImperativeCodeClientSample-Clientanwendung aus

  1. Öffnen Sie mit Visual Studio 2010 die Projektmappendatei "Policy4Sample.sln".

  2. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt ImperativeCodeClientSample, und wählen Sie Als Startprojekt festlegen aus.

  3. Drücken Sie zum Ausführen des Projekts STRG+F5.

So führen Sie die ImperativeCodeClientSample-Clientanwendung aus

  1. Öffnen Sie mit Visual Studio 2010 die Projektmappendatei "Policy4Sample.sln".

  2. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt DesignerClientSample.

    • Wählen Sie Als Startprojekt festlegen aus.
  3. Drücken Sie F6, um das Projekt zu kompilieren.

  4. Drücken Sie zum Ausführen des Projekts STRG+F5.