Associazioni personalizzate
Quando una delle associazioni fornite dal sistema non soddisfa i requisiti del servizio è possibile utilizzare la classe CustomBinding. Tutte le associazioni sono costruite a partire da un set ordinato di elementi di associazione. Le associazioni personalizzate possono essere compilate a partire da un set di elementi di associazione forniti dal sistema oppure possono includere elementi di associazione personalizzati definiti dall'utente. È ad esempio possibile utilizzare elementi di associazione personalizzati per consentire l'utilizzo di nuovi trasporti o codificatori presso un endpoint di servizio. Per alcuni esempi funzionanti, vedere Custom Binding Samples. Per ulteriori informazioni, vedere <customBinding>.
Costruzione di un'associazione personalizzata
Un'associazione personalizzata viene costruita utilizzando il costruttore CustomBinding a partire da una raccolta di elementi di associazione contenuti in uno stack ordinato nel modo seguente:
All'inizio si trova un oggetto TransactionFlowBindingElement facoltativo che consente la propagazione delle transazioni.
Segue quindi un oggetto ReliableSessionBindingElement facoltativo che oltre a una sessione fornisce meccanismi di ordinamento in conformità a quanto definito nella specifica WS-ReliableMessaging. Una sessione può coinvolgere intermediari SOAP e di trasporto.
Segue quindi un oggetto SecurityBindingElement facoltativo che fornisce alcune funzionalità di sicurezza, fra cui: autorizzazione, autenticazione, protezione e riservatezza.
La successiva è una classe CompositeDuplexBindingElement facoltativa che fornisce la possibilità di avere due modalità comunicazione duplex con un protocollo di trasporto che non supporta a livello nativo la comunicazione duplex, ad esempio il protocollo HTTP.
La successiva è una classe OneWayBindingElement facoltativa che fornisce comunicazione unidirezionale.
Il successivo è un elemento di associazione di sicurezza di flusso facoltativo che può essere uno degli elementi seguenti.
Il seguente è un messaggio obbligatorio che codifica l'elemento di associazione. È possibile utilizzare un codificatore di messaggi personalizzato oppure scegliere fra le tre associazioni di codifica dei messaggi seguenti:
Segue infine un elemento di trasporto obbligatorio. È possibile utilizzare un trasporto personalizzato oppure uno dei seguenti elementi di associazione del trasporto forniti da Windows Communication Foundation (WCF):
Nella tabella seguente viene fornito un riepilogo delle opzioni per ogni livello.
Livello | Opzioni | Obbligatorio |
---|---|---|
Transazioni |
TransactionFlowBindingElement |
No |
Affidabilità |
ReliableSessionBindingElement |
No |
Sicurezza |
SecurityBindingElement |
No |
Codifica |
Testo, binario, MTOM (Message Transmission Optimization Mechanism, meccanismo di ottimizzazione della trasmissione dei messaggi), personalizzato |
Sì |
Trasporto |
TCP, HTTP, HTTPS, pipe con nome (anche noto come IPC), Peer-to-peer (P2P), sistema di accodamento dei messaggi (anche noto come MSMQ), personalizzato |
Sì |
È inoltre possibile definire elementi di associazione personalizzati e inserirli tra i livelli appena elencati.
Vedere anche
Attività
Procedura: personalizzare un'associazione fornita dal sistema
Concetti
Cenni preliminari sulla creazione di endpoint
Utilizzo di associazioni per configurare servizi e client
Associazioni fornite dal sistema