SendMessageChannelCache Classe

Definizione

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.Represents an extension that enables the customization of the cache sharing levels, the settings of the channel factory cache, and the settings of the channel cache for workflows that send messages to service endpoints using Send messaging activities.

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

Esempi

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.The following example shows how to use the SendMessageChannelCache class to share a channel cache between two workflow applications in a single app domain.


//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.This class is intended for workflows that send messages to service endpoints. Questi sono in genere flussi di lavoro del client ma potrebbero essere anche servizi del flusso di lavoro ospitati in un oggetto WorkflowServiceHost.These workflows are typically client workflows but could also be workflow services that are hosted in a 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).By default, in a workflow hosted by a WorkflowServiceHost, the cache used by Send messaging activities is shared across all workflow instances in the WorkflowServiceHost (host-level caching). 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).For a client workflow that is not hosted by a WorkflowServiceHost, the cache is available only to the workflow instance (instance-level caching). Per impostazione predefinita, la memorizzazione nella cache è disabilitata per qualsiasi attività di invio nel flusso di lavoro che dispone di endpoint definiti nella configurazione.Caching is disabled by default for any send activity in your workflow that has endpoints defined in configuration.

Per ulteriori informazioni su come modificare i livelli di condivisione della cache predefiniti e le impostazioni della cache per la channel factory e la cache del canale, vedere modifica dei livelli di condivisione della cache per le attività di invio.For more information about how to change the default cache sharing levels and cache settings for the channel factory and channel cache, see Changing the Cache Sharing Levels for Send Activities.

Costruttori

SendMessageChannelCache()

Inizializza una nuova istanza della classe SendMessageChannelCache con le impostazioni della cache factory e della cache del canale predefinite.Initializes a new instance of the SendMessageChannelCache class with default factory cache and channel cache settings.

SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings)

Inizializza una nuova istanza della classe SendMessageChannelCache con le impostazione della cache factory e della cache del canale personalizzate.Initializes a new instance of the SendMessageChannelCache class with custom factory cache and channel cache settings.

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.Initializes a new instance of the SendMessageChannelCache class with custom factory cache settings, custom channel cache settings, and a value that indicates whether to turn caching on.

Proprietà

AllowUnsafeCaching

Ottiene o imposta un valore che indica se attivare la memorizzazione nella cache.Gets or sets a value that indicates whether to turn caching on.

ChannelSettings

Ottiene o imposta le impostazioni della cache del canale.Gets or sets the settings of the channel cache.

FactorySettings

Ottiene o imposta le impostazioni della cache della channel factory.Gets or sets the settings of the channel factory cache.

Metodi

Dispose()

Rilascia tutte le risorse usate dall'istanza corrente della classe SendMessageChannelCache.Releases all resources used by the current instance of the SendMessageChannelCache class.

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.Determines whether the specified object is equal to the current object.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.Serves as the default hash function.

(Ereditato da Object)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Ereditato da Object)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.Returns a string that represents the current object.

(Ereditato da Object)

Si applica a