Compartilhar via


SendMessageChannelCache Construtores

Definição

Inicializa uma nova instância da classe SendMessageChannelCache.

Sobrecargas

SendMessageChannelCache()

Inicializa uma nova instância da classe SendMessageChannelCache com as configurações padrão do cache de canal e do cache de fábrica.

SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings)

Inicializa uma nova instância da classe SendMessageChannelCache com as configurações personalizadas do cache de canal e do cache de fábrica.

SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings, Boolean)

Inicializa uma nova instância da classe SendMessageChannelCache com as configurações personalizadas de cache de fábrica, as configurações personalizadas de cache de canal e um valor que indica se o cache deve ou não ser ativado.

SendMessageChannelCache()

Inicializa uma nova instância da classe SendMessageChannelCache com as configurações padrão do cache de canal e do cache de fábrica.

public:
 SendMessageChannelCache();
public SendMessageChannelCache ();
Public Sub New ()

Aplica-se a

SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings)

Inicializa uma nova instância da classe SendMessageChannelCache com as configurações personalizadas do cache de canal e do cache de fábrica.

public:
 SendMessageChannelCache(System::ServiceModel::Activities::ChannelCacheSettings ^ factorySettings, System::ServiceModel::Activities::ChannelCacheSettings ^ channelSettings);
public SendMessageChannelCache (System.ServiceModel.Activities.ChannelCacheSettings factorySettings, System.ServiceModel.Activities.ChannelCacheSettings channelSettings);
new System.ServiceModel.Activities.SendMessageChannelCache : System.ServiceModel.Activities.ChannelCacheSettings * System.ServiceModel.Activities.ChannelCacheSettings -> System.ServiceModel.Activities.SendMessageChannelCache
Public Sub New (factorySettings As ChannelCacheSettings, channelSettings As ChannelCacheSettings)

Parâmetros

factorySettings
ChannelCacheSettings

As configurações do cache para fábricas de canais armazenadas em cache.

channelSettings
ChannelCacheSettings

As configurações do cache para canais armazenados em cache.

Exemplos

O exemplo a seguir mostra como usar a SendMessageChannelCache classe para compartilhar um cache de canal entre dois aplicativos de fluxo de trabalho em um único domínio de aplicativo.


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

Comentários

Para obter mais informações sobre fábricas de canais, consulte ChannelFactory e ChannelFactory<TChannel>.

Você pode optar por usar apenas o cache de fábrica de canais e desabilitar o cache de canal passando o channelSettings parâmetro para esse construtor inicializado para uma ChannelCacheSettings instância com um MaxItemsInCache valor de 0. Para desabilitar o cache completamente para o cache de fábrica de canais e o cache de canal, passe o factorySettings parâmetro para esse construtor inicializado para uma ChannelCacheSettings instância com um MaxItemsInCache valor de 0. Observe que você não poderá ativar o cache do canal se o cache da fábrica de canais estiver desabilitado.

Aplica-se a

SendMessageChannelCache(ChannelCacheSettings, ChannelCacheSettings, Boolean)

Inicializa uma nova instância da classe SendMessageChannelCache com as configurações personalizadas de cache de fábrica, as configurações personalizadas de cache de canal e um valor que indica se o cache deve ou não ser ativado.

public:
 SendMessageChannelCache(System::ServiceModel::Activities::ChannelCacheSettings ^ factorySettings, System::ServiceModel::Activities::ChannelCacheSettings ^ channelSettings, bool allowUnsafeCaching);
public SendMessageChannelCache (System.ServiceModel.Activities.ChannelCacheSettings factorySettings, System.ServiceModel.Activities.ChannelCacheSettings channelSettings, bool allowUnsafeCaching);
new System.ServiceModel.Activities.SendMessageChannelCache : System.ServiceModel.Activities.ChannelCacheSettings * System.ServiceModel.Activities.ChannelCacheSettings * bool -> System.ServiceModel.Activities.SendMessageChannelCache
Public Sub New (factorySettings As ChannelCacheSettings, channelSettings As ChannelCacheSettings, allowUnsafeCaching As Boolean)

Parâmetros

factorySettings
ChannelCacheSettings

As configurações do cache para fábricas de canais armazenadas em cache.

channelSettings
ChannelCacheSettings

As configurações do cache para canais armazenados em cache.

allowUnsafeCaching
Boolean

true para ativar o cache; caso contrário, false.

Comentários

Por padrão, o cache só está disponível para Send atividades que não usam pontos de extremidade definidos na configuração. No entanto, se você quiser ativar o cache nesse caso, chame esse construtor com o allowUnsafeCaching parâmetro definido como true. Em seguida, adicione a nova instância dessa classe como uma extensão a um host de serviço de fluxo de trabalho ou a uma instância de fluxo de trabalho.

Para obter mais informações sobre fábricas de canais, consulte ChannelFactory e ChannelFactory<TChannel>.

Aplica-se a