Condividi tramite


Business Rules Hello World2 (esempio di BizTalk Server)

L'esempio Hello World2 delle regole business estende l'esempio Hello World1 delle regole business illustrando come eseguire la versione, pubblicare e distribuire il set di regole XML nell'archivio regole SQL condiviso e come eseguire i criteri usando l'oggetto Criteri fornito da Business Rules Framework. Nell'esempio viene inoltre illustrato il funzionamento degli aggiornamenti dinamici dei criteri.

Nota

In questo esempio si presuppone che l'utente abbia installato Servizio di aggiornamento del Motore regole di business e Componenti Regole di business, disponibile sotto il nodo "Software aggiuntivo", durante l'installazione del prodotto.

Nota

Gli oggetti Criteri vengono usati per integrare il motore regole in qualsiasi applicazione autonoma. L'oggetto Policy è l'astrazione tramite cui vengono gestite più istanze del motore regole, i set di regole vengono recuperati e di cui viene creata un'istanza dall'archivio SQL condiviso e gli aggiornamenti dei criteri vengono recuperati e pubblicati nell'applicazione host.

Per informazioni di base sul set di regole definito e sui fatti di esempio creati da questo esempio, vedere Regole business Hello World1.

Scopo dell'esempio

In questo esempio viene creato un file eseguibile che esegue la sequenza di passaggi seguente:

  1. Chiama il metodo CreateRuleset per compilare il set di regole descritto nella sezione Osservazioni.

  2. Chiama il metodo SaveToFile per illustrare il salvataggio di un set di regole in un file.

  3. Chiama il metodo LoadFromFile per illustrare il caricamento di un set di regole da un file.

  4. Distribuisce il set di regole in un archivio regole SQL condiviso.

  5. Esegue il set di regole usando un oggetto Policy e usando lo stesso set di fatti di esempio usati nell'esempio Hello World1 delle regole business.

  6. Sospende, consentendo di modificare il file del set di regole SampleRuleStore.xml in modo specifico.

  7. Esegue di nuovo il set di regole usando un oggetto Policy , il set di regole ora modificato e nuovamente con lo stesso set di fatti di esempio usati nell'esempio Hello World1 delle regole business.

  8. Esegue la pulitura, eliminando il file del set di regole e i record del set di regole distribuito, in vista della preparazione per l'esecuzione successiva dell'esempio.

Nota

Per informazioni importanti su tutti gli esempi in questo SDK, vedere Esempi.

Percorso dell'esempio

<Percorso> esempi\Regole di business\Regole business Hello World2\

Nella seguente tabella sono riportati i file inclusi nell'esempio e ne viene descritto lo scopo.

File Descrizione
App.ico, AssemblyInfo.cs, BusinessRulesHelloWorld2.csproj, BusinessRulesHelloWorld2.sln File del progetto, di soluzione e correlati per la parte di questo esempio che crea, salva, carica, distribuisce ed esegue un set di regole.
HelloWorld2.cs File Visual C# che contiene metodi per illustrare la creazione di un set di regole, il salvataggio di un set di regole in un file, il caricamento di un set di regole da un file, la distribuzione del set di regole in un archivio regole di Microsoft SQL Server condiviso e l'esecuzione del set di regole tramite un oggetto Criteri.
Cleanup.bat Viene utilizzato per annullare la distribuzione degli assembly e rimuoverli dalla Global Assembly Cache. Consente inoltre di rimuovere porte di trasmissione e ricezione. Consente infine di rimuovere le directory virtuali di Microsoft Internet Information Services (IIS), se necessario.
SampleDocumentInstance.xml File di input di esempio conforme allo schema definito nel file SampleSchema.xsd.
SampleSchema.xsd File di schema che definisce un semplice schema con un elemento a cui fa riferimento il set di regole creato nel file Class1.cs di Visual C#.
Setup.bat Utilizzato per compilare e inizializzare l'esempio.
Nella cartella \HelloWorld2Library:

AssemblyInfo.cs, HelloWorld2Library.csproj, HelloWorld2Library.sln
File del progetto, di soluzione e correlati per la parte di questo esempio che fornisce la classe in cui vengono definiti gli oggetti a cui fa riferimento il set di regole creato.
Nella cartella \HelloWorld2Library:

HelloWorld2LibraryClass.cs
File Visual C# che contiene la proprietà a cui fa riferimento la parte IF della regola creata e il metodo che può essere chiamato nella parte THEN della regola creata.

Per creare e inizializzare l'esempio Business Rules Hello World2

  1. In una finestra di comando passare alla seguente cartella:

    <Percorso> esempi\Regole di business\Regole business Hello World2\

  2. Eseguire il file Setup.bat. Verranno eseguite le operazioni seguenti:

    • Compila e distribuisce i progetti di Visual Studio per questo esempio.

    Nota

    Prima di provare a eseguire l'esempio, è necessario verificare che BizTalk Server non abbia segnalato errori durante il processo di generazione e inizializzazione.

    Nota

    Se si sceglie di aprire e compilare i progetti dell'esempio senza eseguire il file Setup.bat, è necessario creare prima una coppia di chiavi con nome sicuro utilizzando l'utilità Nome sicuro di .NET Framework (sn.exe). e utilizzarla per firmare gli assembly risultanti.

    Nota

    Per annullare le modifiche apportate da Setup.bat, eseguire Cleanup.bat. È necessario eseguire Cleanup.bat prima di eseguire Setup.bat una seconda volta.

Per eseguire l'esempio Business Rules Hello World2

  1. In una finestra di comando passare alla seguente cartella:

    <Percorso> esempi\Regole di business\Regole business Hello World2\bin\Debug\

  2. Nella finestra di comando digitare il nome del file per questo esempio (BusinessRulesHelloWorld2.exe) e quindi premere INVIO.

Output di Hello World2

In base alla natura del set di regole creato, descritto nella sezione Commenti di Regole business Hello World1, se si esegue questo esempio con il file di input di esempio fornito SampleDocumentInstance.xml, che ha un valore pari a uno (1) definito per il relativo elemento ID , verrà visualizzato l'output seguente:

Creating a new ruleset ...  
Saving ruleset to SampleRuleStore.xml ...  
Loading ruleset ...  
Deploying the ruleset ...  
Sleeping for 60 seconds (so that the deployed ruleset becomes effective) ...  
Grabbing the policy ...  
Executing the policy...  
MySampleBusinessObject Class -- MySampleMethod executed for object 2 with parameter 5  
MySampleBusinessObject Class -- MySampleMethod executed for object 3 with parameter 5  
The major version of the policy was: 1  
The minor version of the policy was: 0  
Press the ENTER to continue after updating the policy...  

Nota

L'output visualizzato in grassetto è l'output prodotto dall'oggetto business di esempio, definito dai file nella cartella HelloWorld2Library a cui fa riferimento il set di regole. A questo punto, l'applicazione rimane in attesa in questo stato.

La parte successiva dell'esecuzione dell'esempio prevede l'utilizzo di Creazione regole di business per modificare le regole di business.

Per utilizzare Creazione regole di business per modificare le regole di business

  1. Per aprire Business Rules Composer, fare clic su Start, su Tutti i programmi, su Microsoft BizTalk Server 20xx e quindi su Business Rules Composer.

    Nota

    In un sistema che supporta il controllo dell'account utente, potrebbe essere necessario eseguire lo strumento con i privilegi amministrativi. A tale scopo, fare clic con il pulsante destro del mouse sull'applicazione e quindi scegliere Esegui come amministratore.

  2. Se viene visualizzata una finestra di dialogo SQL Server nel computer che esegue SQL Server, fare clic su OK per connettersi all'archivio regole.

  3. In Esplora criteri, sotto il nodo SampleRuleSet , fare clic con il pulsante destro del mouse sul nodo Versione 1.0 - Distribuita e quindi scegliere Copia.

  4. Fare clic con il pulsante destro del mouse su SampleRuleSet e quindi scegliere Incolla (versione dei criteri).

  5. È possibile modificare la condizione e l'azione della regola in base alle proprie esigenze. Per questa procedura, fare clic su rule1 nella versione 1.1 (non salvata). Nel riquadro destro fare clic con il pulsante destro del mouse su Condizioni e quindi scegliere Aggiungi NOT logico. L'aggiunta di un'operazione NOT logica a Not Equal to predicate equivale all'uso di un predicato Equal .

  6. Fare clic con il pulsante destro del mouse sul nodo versione 1.1(non salvata) e quindi scegliere Salva. Fare di nuovo clic con il pulsante destro del mouse e quindi scegliere Pubblica. Fare clic con il pulsante destro del mouse su una terza volta e scegliere Distribuisci.

  7. Premere un tasto nella finestra di comando sospesa, in cui viene richiesto di premere un tasto per continuare dopo l'aggiornamento del criterio.

    Se la regola è stata modificata mediante l'aggiunta di NOT logico, l'output dal file eseguibile BusinessRulesHelloWorld2.exe continua come segue:

Sleeping for 60 seconds (so that the deployed ruleset becomes effective) ...         
Grabbing the policy ...         
Executing the policy...         
MySampleBusinessObject Class -- MySampleMethod executed for object 1 with parameter 5         
The major version of the policy was: 1         
The minor version of the policy was: 1         
Press ENTER to continue after updating the policy...         

Si noti che l'output ha subito modifiche:

  • La riga di output nel metodo MySampleMethod stampa una sola volta, per l'istanza della classe MySampleBusinessObject per cui la proprietà MyValue è uguale a 1, anziché la regola precedente di stampa quando la proprietà MyValue non è uguale a 1.

  • Il numero di versione secondario del criterio è ora 1.

Vedere anche

Business Rules (cartella di esempi di BizTalk Server)