Attività Policy in .NET Framework 4.5Policy Activity in .NET Framework 4.5

L'attività Policy4 consente a Windows Workflow Foundation in .NET Framework versione 3.5.NET Framework version 3.5 (WF 3.5) RuleSet oggetti da usare in Windows Workflow Foundation in .NET Framework 4.6.1.NET Framework 4.6.1 (WF 4.5) direttamente tramite il motore regole di business che viene fornito in WF 3.5.The Policy4 activity allows Windows Workflow Foundation in .NET Framework versione 3.5.NET Framework version 3.5 (WF 3.5) RuleSet objects to be used in Windows Workflow Foundation in .NET Framework 4.6.1.NET Framework 4.6.1 (WF 4.5) directly by using the rules engine that is shipped in WF 3.5. Usando questa attività, è possibile creare ed eseguire un oggetto RuleSet di WF 3.5.By using this activity, you can create and execute a WF 3.5 RuleSet. Per ulteriori informazioni sul motore regole di WF 3.5 incluso come parte di Windows Workflow Foundation, vedere Introduzione a Windows Workflow Foundation motore regole di business.For more information about WF 3.5 Rules Engine included as part of Windows Workflow Foundation, please read Introduction to the Windows Workflow Foundation Rules Engine. Per ulteriori informazioni sulla migrazione di regole di WF in .NET Framework 4.6.1.NET Framework 4.6.1, leggere materiale sussidiario sulla migrazione.For more information about migrating rules to WF in .NET Framework 4.6.1.NET Framework 4.6.1, please read Migration Guidance.

Importante

È possibile che gli esempi siano già installati nel computer.The samples may already be installed on your machine. Verificare la directory seguente (impostazione predefinita) prima di continuare.Check for the following (default) directory before continuing.

<InstallDrive>:\WF_WCF_Samples

Se questa directory non esiste, andare al Windows Communication Foundation (WCF) e gli esempi di Windows Workflow Foundation (WF) per .NET Framework 4 per scaricare tutti i Windows Communication Foundation (WCF) e WFWF esempi.If this directory does not exist, go to Windows Communication Foundation (WCF) and Windows Workflow Foundation (WF) Samples for .NET Framework 4 to download all Windows Communication Foundation (WCF) and WFWF samples. Questo esempio si trova nella directory seguente.This sample is located in the following directory.

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

Progetti di questo esempioProjects in this Sample

Nome progettoProject Name DescrizioneDescription File principaliMain Files
Policy4Policy4 Contiene l'attività Policy4 e la relativa finestra di progettazione di WFWF.Contains the Policy4 activity and its WFWF designer. Policy4.cs: definizione dell'attività Policy4.Policy4.cs: Policy4 activity definition.

Policydesigner: finestra di progettazione personalizzata per l'attività Policy4.PolicyDesigner.xaml: Custom designer for Policy4 activity. Usa l'editor delle regole (classe RuleSetDialog) da WFWF motore regole di business.It uses the rules editor (RuleSetDialog Class) from WFWF rules engine.
ImperativeCodeClientSampleImperativeCodeClientSample Applicazione client di esempio che configura ed esegue un flusso di lavoro tramite un'applicazione Policy4 e il codice C# imperativo (non viene usata alcuna finestra di progettazione di WFWF).Sample client application that configures and runs a workflow using a Policy4 application using imperative C# code (no WFWF Designer used). ApplyDiscount: File con WFWF definizioni delle regole.ApplyDiscount.rules: File with WFWF rule definitions.

Order.cs: tipo che rappresenta un ordine del cliente.Order.cs: Type that represents a customer order. Le regole vengono applicate agli oggetti di questo tipo.Rules are applied to objects of this type.

Program.cs: configura ed esegue un flusso di lavoro che dispone di un'attività Policy4 per applicare le regole definite in ApplyDiscount alle istanze degli oggetti Order.Program.cs: Configures and runs a workflow that has a Policy4 activity to apply rules defined in ApplyDiscount.rules to instances of Order objects.

App. config: file di configurazione con il percorso del file delle regole.App.config: Configuration file with the path of the rules file.
DesignerClientSampleDesignerClientSample Applicazione client di esempio che configura ed esegue un flusso di lavoro tramite un'applicazione Policy4 nella finestra di progettazione di WFWF.Sample client application that configures and runs a workflow using a Policy4 application in the WFWF Designer. Sequence1.XAML: flusso di lavoro sequenza che usa un'attività Policy4 per eseguire valutazioni delle regole.Sequence1.xaml: Sequential workflow that uses a Policy4 activity to perform rule evaluations.

Program.cs: esegue un'istanza del flusso di lavoro definito in Sequence1.xaml.Program.cs: Runs an instance of the workflow defined in Sequence1.xaml.

Attività Policy4The Policy4 Activity

L'attività Policy4 è una classe che deriva dall'oggetto NativeActivity<TResult> che consente ai flussi di lavoro di eseguire oggetti RuleSet di WFWF.The Policy4 activity is a class that derives from NativeActivity<TResult> that allows workflows to execute WFWF RuleSets. L'esempio di codice seguente è una definizione semplificata del modello a oggetti pubblico dell'attività.The following code example is a simplified definition of the public OM of the activity.

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

    [IsRequired]  
    public InArgument Input  

    public OutArgument<ValidationErrorCollection> ValidationErrors  
}  
ProprietàProperty DescrizioneDescription
RuleSetRuleSet WF classe RuleSet per .NET Framework 3.5 da valutare quando viene eseguita l'attività.The WF RuleSet Class for .NET Framework 3.5 to be evaluated when the activity is executed.
TargetObjectTargetObject L'oggetto con cui le regole di classe RuleSet vengono valutati.The object against which the Rules in the RuleSet Class are evaluated.
ValidationErrorValidationError L'elenco di errori di convalida restituito dal WFWF motore regole di business per .NET Framework 3.5 quando si convalida la classe RuleSet rispetto all'oggetto di destinazione prima dell'esecuzione.The list of validation errors returned by the WFWF Rule Engine for .NET Framework 3.5 when validating the RuleSet Class against the target object before execution.

ActivityDesigner di Policy4Policy4 Activity Designer

La finestra di progettazione di Policy4 aggiunge la funzionalità che consente di configurare un'attività Policy4 senza dover scrivere codice.The Policy4 designer adds the capability to configure a Policy4 activity without the need to write code. Dopo aver compilato la soluzione, possono essere trovati nella casella degli strumenti nella sezione rules.After building the solution, it can be found in the toolbox in the section Microsoft.Samples.Activities.Rules.

La finestra di progettazione di WF consente di configurare un oggetto di destinazione e un oggetto RuleSet.The WF Designer allows you to configure a target object and a RuleSet. Quando il modifica RuleSet pulsante WF classe RuleSetDialog per .NET Framework 3.5.NET Framework 3.5 viene visualizzato.When the Edit RuleSet button is clicked, the WF RuleSetDialog Class for .NET Framework 3.5.NET Framework 3.5 is displayed. Questa finestra di dialogo è l'editor delle regole di .NET Framework 3.5.NET Framework 3.5 rieseguito nell'host.This dialog is the re-hosted .NET Framework 3.5.NET Framework 3.5 Rules Editor. Usare l'editor per creare e modificare le regole eseguite dall'attività Policy4.Use the editor to create and edit the rules that the Policy4 activity executes.

Utilizzo dell'esempioUsing this Sample

Per eseguire questo esempio non è necessaria alcuna configurazione particolare.No special set up is required to run this sample. È sufficiente aprire la soluzione in Visual Studio e premere F5 per eseguire l'applicazione.Just open the solution in Visual Studio, and press F5 to run the application.

In questo esempio sono contenute due applicazioni client: ImperativeCodeClientSample e DesignerClientSample.This sample contains two client applications: ImperativeCodeClientSample and DesignerClientSample. Nel client ImperativeCodeClientSample viene illustrato come configurare ed eseguire l'attività Policy40 tramite il codice imperativo C#.The ImperativeCodeClientSample client shows how to configure and run the Policy40 activity using C# imperative code. In DesignerClientSample viene illustrato come configurare ed eseguire l'attività Policy4 tramite la finestra di progettazione.The DesignerClientSample shows how to configure and run the Policy4 activity using the designer.

Per eseguire l'applicazione client ImperativeCodeClientSampleTo run the ImperativeCodeClientSample client application

  1. In Visual Studio 2012Visual Studio 2012 aprire il file della soluzione Policy4Sample.sln.Using Visual Studio 2012Visual Studio 2012, open the Policy4Sample.sln solution file.

  2. In Esplora, fare doppio clic su di ImperativeCodeClientSample del progetto e quindi selezionare imposta come progetto di avvio.In Solution Explorer, right-click the ImperativeCodeClientSample project and then select Set as startup project.

  3. Per eseguire il progetto, premere CTRL+F5.To run the project, press CTRL+F5.

Per eseguire l'applicazione client ImperativeCodeClientSampleTo run the ImperativeCodeClientSample client application

  1. In Visual Studio 2012Visual Studio 2012 aprire il file della soluzione Policy4Sample.sln.Using Visual Studio 2012Visual Studio 2012, open the Policy4Sample.sln solution file.

  2. In Esplora, fare doppio clic su di DesignerClientSample progetto.In Solution Explorer, right-click the DesignerClientSample project.

    • Selezionare imposta come progetto di avvio.Select Set as startup project.
  3. Per compilare il progetto, premere CTRL+MAIUSC+B.To compile the project, press CTRL+SHIFT+B.

  4. Per eseguire il progetto, premere CTRL+F5.To run the project, press CTRL+F5.