Freigeben über


SendMessageChannelCache Klasse

Definition

Stellt eine Erweiterung dar, die die Anpassung der Cachefreigabeebenen, der Einstellungen des Channelfactorycaches und der Einstellungen des Channelcaches für Workflows ermöglicht, die Meldungen mit Send- Messagingaktivitäten an Dienstendpunkte senden.

public ref class SendMessageChannelCache sealed : IDisposable
public sealed class SendMessageChannelCache : IDisposable
type SendMessageChannelCache = class
    interface IDisposable
Public NotInheritable Class SendMessageChannelCache
Implements IDisposable
Vererbung
SendMessageChannelCache
Implementiert

Beispiele

Im folgenden Beispiel wird gezeigt, wie die SendMessageChannelCache-Klasse verwendet wird, um einen Channelcache zwischen zwei Workflowanwendungen in einer einzelnen Anwendungsdomäne freizugeben.


//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);

Hinweise

Diese Klasse ist bestimmt für Workflows, die Meldungen an Dienstendpunkte senden. Diese Workflows sind in der Regel Clientworkflows, könnten jedoch auch Workflowdienste sein, die in einem WorkflowServiceHost gehostet werden.

Standardmäßig wird in einem von einem WorkflowServiceHost gehosteten Workflow der von Send-Messagingaktivitäten verwendete Cache von allen Workflowinstanzen im WorkflowServiceHost (Zwischenspeichern auf Hostebene) gemeinsam verwendet. Bei einen Clientworkflow, der nicht von einem WorkflowServiceHost gehostet wird, steht der Cache nur der Workflowinstanz zur Verfügung (Zwischenspeichern auf Instanzebene). In einem Workflow, der in der Konfiguration definierte Endpunkte besitzt, ist das Zwischenspeichern für jede Sendeaktivität standardmäßig deaktiviert.

Weitere Informationen zum Ändern der Standardcachefreigabeebenen und Cacheeinstellungen für die Kanalfactory und den Kanalcache finden Sie unter Ändern der Cachefreigabestufen für Sendeaktivitäten.

Konstruktoren

SendMessageChannelCache()

Initialisiert eine neue Instanz der SendMessageChannelCache-Klasse mit Standardeinstellungen für den Factorycache und den Channelcache.

SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings)

Initialisiert eine neue Instanz der SendMessageChannelCache-Klasse mit benutzerdefinierten Einstellungen für den Cache und den Channelcache.

SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings, Boolean)

Initialisiert eine neue Instanz der SendMessageChannelCache-Klasse mit benutzerdefinierten Factorycacheeinstellungen, benutzerdefinierten Channelcacheeinstellungen und einem Wert, der angibt, ob das Zwischenspeichern aktiviert werden soll.

Eigenschaften

AllowUnsafeCaching

Ruft einen Wert ab, der angibt, ob Zwischenspeichern aktiviert werden soll, oder legt diesen fest.

ChannelSettings

Ruft die Einstellungen des Channelcaches ab oder legt sie fest.

FactorySettings

Ruft die Einstellungen des Channelfactorycaches ab oder legt sie fest.

Methoden

Dispose()

Gibt alle von der aktuellen Instanz der SendMessageChannelCache-Klasse verwendeten Ressourcen frei.

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für: