Condividi tramite


OperationsSamples (esempio di BizTalk Server)

Nell'esempio OperationsSamples viene illustrato come eseguire attività operative utilizzando il modello a oggetti Operations.

Scopo dell'esempio

Questo esempio illustra i seguenti elementi:

  • Come utilizzare un profilo di rilevamento per commentare un'orchestrazione con attività.

  • Come utilizzare il database di rilevamento BAM per trovare un ID attività e utilizzare quindi l'ID per trovare un'istanza di orchestrazione correlata.

  • Come trovare e usare i flussi di messaggi usando la classe MessageFlow e altre classi e API del modello a oggetti Operations.

  • Come accedere a porte, messaggi e altre istanze usando classi derivate dalla classe Instance .

    Nell'esempio sono contenute numerose classi di supporto e metodi utili al supporto delle operazioni descritte sopra. I dettagli relativi a tali classi e metodi oltre che a eventuale altro codice sono illustrati nella sezione successiva.

Progettazione e finalità dell'esempio

Questo esempio viene utilizzato per illustrare le classi e i metodi principali nel modello a oggetti Operations e spiegare come eseguire query sul database di rilevamento BAM pubblicamente disponibile.

Nel modello a oggetti Operations sono contenute classi che consentono di manipolare i messaggi e altre istanze all'interno di BizTalk Server.

Utilizzo di un ID attività BAM

In questo esempio viene illustrato come interagire con BAM e come utilizzare le visualizzazioni pubblicamente disponibili nel database di rilevamento per individuare un messaggio attivato nel MessageBox utilizzando i dati business. A tale scopo, nell'esempio verrà recuperato un ID orchestrazione corrispondente a un numero di ordine di acquisto. Affinché l'attività abbia esito positivo, dovranno essere eseguite le operazioni seguenti:

  1. Usare i dati aziendali (un numero di ordine di acquisto) per trovare un ID attività. Questo passaggio esegue il mapping dei dati aziendali a un ID interno che può essere usato per trovare informazioni aggiuntive.

  2. Recuperare i riferimenti BAM correlati all'ID attività.

  3. Trovare un riferimento di tipo "BizTalkService" che fa riferimento a un'orchestrazione. Se ne viene trovato uno, restituire il relativo ID istanza.

    Questa funzionalità viene fornita dal metodo statico BAMWebService.GetOrchestrationID e dai metodi helper associati, incluse classi e metodi nel file di origine BamManagementService.cs.

Sospendere, terminare e riprendere un'istanza

Il programma di esempio include un metodo Samples.OperateOnInstance che accetta un'operazione e un ID istanza ed esegue l'operazione specificata nell'istanza. Le operazioni valide sono definite dall'enumerazione InstanceOperation e includono Suspend, Terminate e Resume. Queste operazioni vengono mappate direttamente ai metodi della classe BizTalkOperations: SuspendInstance, TerminateInstance e ResumeInstance.

Si noti che il metodo gestisce entrambe le eccezioni ArgumentException e SqlException. Prestare attenzione nel prevedere le eccezioni, inclusa l'eccezione SqlException, quando si utilizzano le classi e i metodi nel modello a oggetti Operations.

Nota

Molti metodi Operations richiedono l'accesso al database. Prevedere le eccezioni generate da questi metodi e gestirle in modo appropriato.

Recupero di tutti i messaggi attivi

Il modello a oggetti Operations semplifica lo scorrimento su tutti i messaggi attivi disponibili, come illustrato nel frammento di codice seguente:

BizTalkOperations _operations = new BizTalkOperations()  
IEnumerable messages = _operations.GetMessages();  
foreach (BizTalkMessage msg in messages)  
…  

Il programma OperationsSamples esegue un ulteriore passaggio illustrando come accedere alle informazioni relative a ciascun messaggio, fra cui ID messaggio e tipo di messaggio, oltre che al numero e ai tipi di parti messaggio. È possibile modificare il codice e utilizzarlo in scenari in cui è necessario scorrere molti o tutti i messaggi attivi disponibili in BizTalk Server.

Nota

Potrebbero essere presenti centinaia o migliaia di messaggi disponibili. L'analisi dell'intero elenco potrebbe influire negativamente sulle prestazioni.

Percorso dell'esempio

L'esempio è disponibile nel seguente percorso dell'SDK:

<Percorso esempi>\Amministrazione\OperationsOM\OperationsSamples\

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

File Descrizione
BamManagementService.cs Classe proxy Web per il servizio Web BAM.
Cleanup.bat Rimuove l'orchestrazione di esempio e ripristina lo stato originale dell'esempio HelloWorld.
HelloOrchestration.btt Profilo di rilevamento utilizzato per eseguire il mapping delle attività di origine eventi di BizTalk alle attività di destinazione BAM.
HelloOrchestration.xls Foglio di stile di definizione BAM.
OperationsSamples.cs File di origine C# contenente il codice che illustra diversi aspetti del modello oggetti Operations.
OperationsSamples.csproj, OperationsSamples.sln, AssemblyInfo.cs File di informazioni di progetto, soluzione e assembly per questo esempio.
Setup.bat Viene utilizzato per compilare e inizializzare l'esempio mediante la modifica dell'esempio di orchestrazione HelloWorld. Installa un'orchestrazione di esempio, distribuisce una definizione di attività BAM e il file dell'Editor profili di rilevamento, configura le porte e rilascia un file di esempio nell'indirizzo di ricezione.

Modalità di utilizzo dell'esempio

Utilizzare questo esempio per esplorare le funzionalità disponibili nel modello a oggetti Operations. Modificare le routine esistenti per trovare e utilizzare i messaggi in modo diverso o aggiungere nuovo codice che replichi porzioni dell'HUB gruppo nella Console di amministrazione BizTalk Server.

È inoltre possibile eseguire alcune delle attività seguenti:

  • Scrivere un'applicazione in grado di replicare il subset più utilizzato dell'Hub gruppo in un'applicazione personalizzata.

  • Scrivere un'applicazione di provisioning personalizzata in grado di creare le porte e inviare un messaggio di test per i partner commerciali.

  • Modificare il programma di esempio in un'utilità della riga di comando in grado di fornire informazioni relative a un singolo ordine di acquisto o a un intervallo di ordini di acquisto su schermo, in un file XML o in un report di testo.

Installazione dei file di supporto dell'esempio

In questa sezione vengono illustrate le procedure necessarie per installare ed eseguire l'esempio.

Nota

Prima di installare e di eseguire questo esempio è necessario verificare che BAM sia stato installato e che funzioni correttamente. Se BAM non è installato, l'esempio non funziona.

Compilare e installare i file di supporto per questo esempio

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

    <Samples Path>\Admin\OperationsOM\OperationSamples

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

    • Creazione delle directory di trasmissione e ricezione

    • Creazione e avvio delle porte di trasmissione e di ricezione

    • Compila e distribuisce l'orchestrazione HelloWorld nella <Samples Path>cartella \Orchestrations\HelloWorld.

    • Modifica del token di chiave pubblica per l'orchestrazione HelloWorld

    • Distribuzione della definizione di attività BAM e del file dell'Editor profili di rilevamento

    • Ridenominazione della directory di uscita

    Nota

    Per interrompere l'installazione, premere CTRL+C al primo prompt in cui viene richiesto di premere un tasto qualsiasi per continuare. Questa operazione consente di arrestare lo script e lasciare l'esempio HelloWorld nello stato originale. Se si preme CTRL+C al secondo e ultimo prompt, l'installazione non viene arrestata. In tal caso, eseguire il file Cleanup.bat per disinstallare l'esempio OperationsOM e ripristinare l'esempio HelloWorld.

Esecuzione dell'esempio

Utilizzare la procedura seguente per eseguire l'esempio OperationsOM.

Compilare ed eseguire l'esempio

  1. Fare clic su Start, selezionare Tutti i programmi, selezionare Microsoft BizTalk Server e quindi BizTalk Server Amministrazione.

  2. Nella console di amministrazione di BizTalk Server espandere BizTalk Server Amministrazione, espandere Gruppo BizTalk, espandere Impostazioni piattaforma e quindi Istanze host.

  3. Fare clic con il pulsante destro del mouse su BizTalkServerApplication e quindi scegliere Riavvia.

    Nota

    Potrebbe essere necessario riavviare l'istanza host di BizTalkServerApplication per impostare il database di lavoro corretto per BAM se l'istanza host non è stata riavviata dopo la configurazione del prodotto.

  4. In Esplora risorse passare alla cartella seguente:

    <Samples Path>\Admin\OperationsOM\OperationSamples

  5. Fare doppio clic sul file di progetto OperationsOM.sln per caricarlo in Visual Studio.

  6. Premere F5 per eseguire l'esempio.

    -OPPURE-

    Nel menu Compila fare clic su Ricompila soluzione. Al termine della compilazione, usare Esplora risorse per passare a <Samples Path>\Admin\OperationsOM\OperationSamples\bin\Debug, e quindi fare doppio clic suOperationsSamples.exe.

Classi o metodi utilizzati nell'esempio

Vedere anche

Admin-OperationsOM (cartella di esempi di BizTalk Server)