SendMessageChannelCache Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt eine Erweiterung dar, die die Anpassung der Cachefreigabeebenen, die Einstellungen des Kanalfactorycaches und die Einstellungen des Kanalcaches für Workflows ermöglicht, die Nachrichten mithilfe von 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
Das folgende Beispiel zeigt, wie Sie die SendMessageChannelCache Klasse verwenden, um einen Kanalcache zwischen zwei Workflowanwendungen in einer einzelnen App-Domä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 für Workflows gedacht, die Nachrichten an Dienstendpunkte senden. Diese Workflows sind in der Regel Client-Workflows, können aber auch Workflow-Dienste sein, die in einer WorkflowServiceHost gehostet werden.
Standardmäßig wird in einem von einem WorkflowServiceHostworkflow gehosteten Cache der von Send Messagingaktivitäten verwendete Cache für alle Workflowinstanzen im WorkflowServiceHost (Zwischenspeicherung auf Hostebene) freigegeben. Für einen Clientworkflow, der nicht von einem WorkflowServiceHostClient gehostet wird, ist der Cache nur für die Workflowinstanz (Zwischenspeicherung auf Instanzebene) verfügbar. Das Zwischenspeichern ist standardmäßig für jede Sendeaktivität in Ihrem Workflow deaktiviert, die endpunkte in der Konfiguration definiert ist.
Weitere Informationen zum Ändern der Standardcachefreigabeebenen und Cacheeinstellungen für die Kanalfactory und den Kanalcache finden Sie unter Ändern der Cachefreigabeebenen für Sendeaktivitäten.
Konstruktoren
| Name | Beschreibung |
|---|---|
| SendMessageChannelCache() |
Initialisiert eine neue Instanz der SendMessageChannelCache Klasse mit den Standardeinstellungen für den Factorycache und kanalcache. |
| SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings, Boolean) |
Initialisiert eine neue Instanz der SendMessageChannelCache Klasse mit benutzerdefinierten Factorycacheeinstellungen, benutzerdefinierten Kanalcacheeinstellungen und einem Wert, der angibt, ob die Zwischenspeicherung aktiviert werden soll. |
| SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings) |
Initialisiert eine neue Instanz der SendMessageChannelCache Klasse mit benutzerdefinierten Factorycache- und Kanalcacheeinstellungen. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| AllowUnsafeCaching |
Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob die Zwischenspeicherung aktiviert werden soll. |
| ChannelSettings |
Ruft die Einstellungen des Kanalcaches ab oder legt diese fest. |
| FactorySettings |
Dient zum Abrufen oder Festlegen der Einstellungen des Kanalfactorycaches. |
Methoden
| Name | Beschreibung |
|---|---|
| Dispose() |
Gibt alle Ressourcen frei, die von der aktuellen Instanz der SendMessageChannelCache Klasse verwendet werden. |
| Equals(Object) |
Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht. (Geerbt von Object) |
| GetHashCode() |
Dient als Standardhashfunktion. (Geerbt von Object) |
| GetType() |
Ruft die Type der aktuellen Instanz ab. (Geerbt von Object) |
| MemberwiseClone() |
Erstellt eine flache Kopie der aktuellen Object. (Geerbt von Object) |
| ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |