SendMessageChannelCache Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta un'estensione che abilita la personalizzazione dei livelli di condivisione della cache, le impostazioni della cache della channel factory e le impostazioni della cache del canale per i flussi di lavoro che inviano messaggi a endpoint di servizio utilizzando le attività di messaggistica Send.
public ref class SendMessageChannelCache sealed : IDisposable
public sealed class SendMessageChannelCache : IDisposable
type SendMessageChannelCache = class
interface IDisposable
Public NotInheritable Class SendMessageChannelCache
Implements IDisposable
- Ereditarietà
-
SendMessageChannelCache
- Implementazioni
Esempio
Nell'esempio seguente viene mostrato come utilizzare la classe SendMessageChannelCache per condividere una cache del canale tra due applicazioni del flusso di lavoro in un solo dominio dell'applicazione.
//sharing a channel cache between two workflow applications in a single app-domain.
sharedChannelCache = new SendMessageChannelCache(new ChannelCacheSettings { MaxItemsInCache = 5 }, new ChannelCacheSettings { MaxItemsInCache = 5 });
WorkflowApplication workflowApp1 = new WorkflowApplication(workflow);
workflowApp1.Completed = new Action<WorkflowApplicationCompletedEventArgs>(OnCompleted);
workflowApp1.Extensions.Add(sharedChannelCache);
WorkflowApplication workflowApp2 = new WorkflowApplication(workflow);
workflowApp2.Completed = new Action<WorkflowApplicationCompletedEventArgs>(OnCompleted);
workflowApp2.Extensions.Add(sharedChannelCache);
//disabling the channel cache so that channels are closed after being used.
SendMessageChannelCache disabledChannelCache = new SendMessageChannelCache(new ChannelCacheSettings { MaxItemsInCache = 0 }, new ChannelCacheSettings { MaxItemsInCache = 0 });
WorkflowApplication workflowApp3 = new WorkflowApplication(workflow);
workflowApp3.Completed = new Action<WorkflowApplicationCompletedEventArgs>(OnCompleted);
workflowApp3.Extensions.Add(disabledChannelCache);
Commenti
Questa classe è destinata a flussi di lavoro che inviano messaggi agli endpoint di servizio. Questi sono in genere flussi di lavoro del client ma potrebbero essere anche servizi del flusso di lavoro ospitati in un oggetto WorkflowServiceHost.
Per impostazione predefinita, in un flusso di lavoro ospitato da un oggetto WorkflowServiceHost, la cache usata da attività di messaggistica Send è condivisa attraverso tutte le istanze del flusso di lavoro in WorkflowServiceHost (memorizzazione nella cache a livello di host). Per un flusso di lavoro del client che non è ospitato da un oggetto WorkflowServiceHost, la cache è disponibile solo all'istanza del flusso di lavoro (memorizzazione nella cache a livello di istanza). Per impostazione predefinita, la memorizzazione nella cache è disabilitata per qualsiasi attività di invio nel flusso di lavoro che dispone di endpoint definiti nella configurazione.
Per altre informazioni su come modificare i livelli di condivisione della cache e le impostazioni di cache predefinite per la channel factory e la cache dei canali, vedere Modifica dei livelli di condivisione della cache per le attività di invio.
Costruttori
SendMessageChannelCache() |
Inizializza una nuova istanza della classe SendMessageChannelCache con le impostazioni della cache factory e della cache del canale predefinite. |
SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings) |
Inizializza una nuova istanza della classe SendMessageChannelCache con le impostazione della cache factory e della cache del canale personalizzate. |
SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings, Boolean) |
Inizializza una nuova istanza della classe SendMessageChannelCache con impostazioni della cache di factory personalizzate, impostazioni della cache di canale personalizzate e un valore che indica se attivare caching. |
Proprietà
AllowUnsafeCaching |
Ottiene o imposta un valore che indica se attivare la memorizzazione nella cache. |
ChannelSettings |
Ottiene o imposta le impostazioni della cache del canale. |
FactorySettings |
Ottiene o imposta le impostazioni della cache della channel factory. |
Metodi
Dispose() |
Rilascia tutte le risorse usate dall'istanza corrente della classe SendMessageChannelCache. |
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |