Condividi tramite


Esercitazione 1: Sviluppare Echo Adapter

In questa esercitazione si svilupperà una scheda funzionale usando WCF LOB Adapter SDK. L'adapter simula le operazioni di un sistema line-of-business fittizio per illustrare molte delle principali funzionalità dell'SDK dell'adapter LOB WCF, tra cui:

  • In ingresso sincrono

  • Uscita sincrona

  • Esplora metadati

  • Ricerca metadati

  • Risoluzione dei metadati

    Questa sezione contiene varie funzionalità supportate dall'adattatore echo. Sono scambio di messaggi, metadati delle operazioni, proprietà di connessione e proprietà dell'adattatore.

Modelli di scambio dei messaggi

L'adattatore echo supporta i due modelli di scambio messaggi seguenti:

  • In uscita sincrona, ovvero il client che usa invia il messaggio di richiesta WCF tramite l'adapter al sistema di destinazione e quindi attende di ricevere un messaggio di risposta WCF dal sistema di destinazione tramite l'adapter. Si tratta del modello di scambio dei messaggi più comune per un adattatore. Per supportare l'uscita in uscita sincrona, implementare l'interfaccia Microsoft.ServiceModel.Channels.Common.IOutboundHandler .

  • In ingresso sincrono, ovvero l'utilizzo del client ascolta i dati o gli eventi dal sistema di destinazione tramite l'adattatore. Per supportare l'ingresso sincrono, implementare l'interfaccia Microsoft.ServiceModel.Channels.Common.IInboundHandler .

    Per altre informazioni sui modelli di scambio dei messaggi, vedere Panoramica dell'architettura.

Nota

La creazione guidata sviluppo adapter mostra il modello di scambio dei messaggi come flusso di dati nell'interfaccia utente.

Supporto dei metadati

L'adattatore echo supporta l'esplorazione dei metadati, la ricerca e la risoluzione delle funzionalità. In genere, l'esplorazione e la ricerca recuperano le operazioni da un sistema LOB. Per l'adattatore echo, un sistema LOB è un set di operazioni predefinite, come illustrato di seguito:

EchoMainCategory  
        Echo/EchoStrings  
        Echo/EchoGreetings  
        Echo/EchoCustomGreetingFromFile  
        Echo/OnReceiveEcho  

Di seguito è riportata la definizione di ogni operazione:

Nome Definizione dell'operazione Descrizione Direzione
EchoMainCategory Category Classifica le operazioni. N/D
Echo/EchoStrings string[] EchoStrings(string data) Esegue l'eco della stringa in ingresso un numero specificato di volte al client chiamante. In uscita
Echo/EchoGreetings Saluto[] EchoGreetings(Saluto) Esegue l'eco dell'oggetto Greeting in ingresso un numero specificato di volte al client chiamante. In uscita
Echo/EchoCustomGreetingFromFile CustomGreeting EchoCustomGreetingFromFile(Uri greetingInstancePath) Esegue l'eco dell'oggetto Greeting leggendo la relativa istanza da un file. I metadati dell'oggetto Greeting vengono ottenuti da un file XSD predefinito. In uscita
Echo/OnReceiveEcho void OnReceiveEcho(percorso Uri, contenuto lungo) Esegue l'eco del percorso e della lunghezza di un file eliminato nella cartella specificata. In ingresso

Proprietà adapter

L'adapter espone le proprietà dell'adapter seguenti.

Nome Categoria Tipo di dati Descrizione
Conteggio Varie System.Int32 Usato per eco dell'input il numero di volte specificato al client chiamante.

Default = 5
EnableConnectionPooling Varie System.Boolean Usato per abilitare o disabilitare il pool di connessioni per la scheda.

Default = true, significa che il pool di connessioni è abilitato nel motore di runtime dell'SDK dell'adapter LOB WCF.
InboundFileFilter In ingresso System.String Usato solo per lo scenario in ingresso e usato da FileSystemWatcher per monitorare i file dell'estensione.

Default=*.txt
InboundFileSystemWatcherFolder In ingresso System.String Usato per impostare la cartella in cui verranno eliminati i file per FileSystemWatcher per generare la notifica all'adapter.

Default = c:\inbound\watcher.

Proprietà connessione

L'adattatore echo espone le proprietà di connessione seguenti.

Nome Tipo di dati Descrizione
Applicazione System.String Nome dell'applicazione all'interno del sistema LOB. Questa proprietà è per scopi illustrativi. L'adattatore echo non comporta alcun sistema LOB.

Default = lobapplication
EnableAuthentication System.Boolean Se true, l'adapter prevede un valore nel campo nome utente all'interno delle credenziali client.

Default = false
Nome host System.String Nome del server in cui risiede un sistema LOB. Questa proprietà è per scopi illustrativi. L'adattatore echo non comporta alcun sistema LOB.

Default = lobhostname

Implementazione dell'interfaccia

WCF LOB Adapter SDK definisce una raccolta di classi e interfacce che devono essere implementate per supportare funzionalità specifiche dell'adattatore. Nella tabella seguente vengono descritte le classi e le interfacce, le relative descrizioni e quando implementarle.

Classe/interfaccia Quando implementare Descrizione
Microsoft.ServiceModel.Channels.Common.IConnection Se è necessario definire la connessione al sistema di destinazione. Definisce la connessione al sistema di destinazione.
Microsoft.ServiceModel.Channels.Common.IConnectionFactory Se è necessario creare una connessione al sistema di destinazione. Crea la connessione al sistema di destinazione.
Microsoft.ServiceModel.Channels.Common.ConnectionUri Se è necessario gestire un URI di connessione.

Se è necessario classificare la proprietà di connessione all'interno dello strumento Plug-in Aggiungi riferimento al servizio adapter.
Gestisce un URI di connessione per il sistema di destinazione.
Microsoft.ServiceModel.Channels.Common.IMetadataResolverHandler L'adattatore deve supportare la funzionalità di risoluzione dei metadati. Risolve l'operazione e i metadati del tipo.
Microsoft.ServiceModel.Channels.Common.IMetadataSearchHandler Se l'adattatore supporta la funzionalità di ricerca dei metadati. Cerca le operazioni all'interno del sistema di destinazione.
Microsoft.ServiceModel.Channels.Common.IMetadataBrowseHandler L'adattatore deve supportare la funzionalità browse Cerca le operazioni all'interno del sistema di destinazione.
Microsoft.ServiceModel.Channels.Common.IOutboundHandler Se in genere l'adattatore deve supportare la funzionalità in uscita. Trasforma il messaggio di richiesta WCF in ingresso in un messaggio di sistema di destinazione, richiama la funzione specifica del sistema di destinazione e quindi trasforma la risposta in un messaggio di risposta WCF in uscita.
Microsoft.ServiceModel.Channels.Common.IInboundHandler Se l'adattatore supporta la funzionalità in ingresso. Ascolta i dati e/o gli eventi dal sistema di destinazione.

Per semplificare lo sviluppo di adattatori, usare la Creazione guidata adapter per generare il progetto adapter, che crea un set di classi derivate personalizzate per le funzionalità dell'adattatore.

Per personalizzare le proprietà dell'adattatore e della connessione tramite gli strumenti aggiuntivi aggiungi plug-in di riferimento al servizio adapter e Consume Adapter Service, modificare i file seguenti generati dalla Creazione guidata adapter.

Vedere anche

Esercitazioni per informazioni su WCF LOB Adapter SDK