Condividi tramite


<sendMessageChannelCache>

Comportamento del servizio che consente la personalizzazione dei livelli di condivisione della cache, delle impostazioni della cache della channel factory e delle impostazioni della cache del canale per flussi di lavoro che inviano messaggi a endpoint di servizio utilizzando attività della messaggistica di invio.

Schema Hierarchy

<system.serviceModel> del flusso di lavoro
  <behaviors> del flusso di lavoro
    <serviceBehaviors> del flusso di lavoro
      <behavior> di <serviceBehaviors> del flusso di lavoro
        <sendMessageChannelCache>

Sintassi

<behaviors>  <serviceBehaviors>    <behavior name=String">       <sendMessageChannelCache allowUnsafeCaching="Boolean" >                   <channelSettings idleTimeout="TimeSpan" leaseTimeout="TimeSpan" maxItemsInCache="Integer" />           <factorySettings idleTimeout="TimeSpan" leaseTimeout="TimeSpan" maxItemsInCache="Integer" />       </sendMessageChannelCache>    </behavior>  </serviceBehaviors></behaviors>

Attributi ed elementi

Nelle sezioni seguenti vengono descritti attributi, elementi figlio ed elementi padre.

Attributi

Attributo Descrizione

allowUnsafeCaching

Valore booleano che indica se attivare la memorizzazione nella cache. Se il servizio flusso di lavoro dispone di associazioni o comportamenti personalizzati, la memorizzazione nella cache potrebbe non essere sicura e pertanto essere disabilitata per impostazione predefinita. Se tuttavia si desidera attivare la memorizzazione nella cache, impostare questa proprietà su true.

Elementi figlio

Elemento Descrizione

<channelSettings>

Specifica le impostazioni della cache del canale.

<factorySettings>

Specifica le impostazioni della cache della channel factory.

Elementi padre

Elemento Descrizione

<behavior> di <serviceBehaviors> del flusso di lavoro

Specifica un elemento di comportamento.

Osservazioni

Questo comportamento del servizio è designato per flussi di lavoro che inviano messaggi a endpoint di servizio. Questi sono in genere flussi di lavoro del client ma potrebbero essere anche servizi del flusso di lavoro ospitati in un WorkflowServiceHost.

Per impostazione predefinita, in un flusso di lavoro ospitato da un WorkflowServiceHost, la cache utilizzata da attività della 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 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 ulteriori informazioni su come modificare i livelli predefiniti di condivisione della cache, le impostazioni della cache per la channel factory e la cache del canale, vedere Changing the Cache Sharing Levels for Send Activities.

Esempio

In un servizio flusso di lavoro ospitato è possibile specificare le impostazioni della cache della factory e della cache del canale nel file di configurazione dell'applicazione. A tale scopo, aggiungere un comportamento del servizio contenente le impostazioni della cache della factory e del canale e aggiungere tale comportamento al servizio. Nell'esempio seguente viene mostrato il contenuto di un file di configurazione che contiene il comportamento del servizio **MyChannelCacheBehavior **con le impostazioni personalizzate per la cache della factory e la cache del canale. Tale comportamento viene aggiunto al servizio tramite l'attributo **behaviorConfiguarion **.

<configuration>  
  <system.serviceModel>
    <!-- List of other config sections here --> 
    <behaviors>
      <serviceBehaviors>
        <behavior name="MyChannelCacheBehavior">
          <sendMessageChannelCache allowUnsafeCaching ="false" >
            <!-- Control only the host level settings --> 
            <factorySettings maxItemsInCache = "8" idleTimeout = "00:05:00" leaseTimeout="10:00:00" />
            <channelSettings maxItemsInCache = "32" idleTimeout = "00:05:00" leaseTimeout="00:06:00" />
          </sendMessageChannelCache>
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <services>
      <service name="MyService" behaviorConfiguration="MyChannelCacheBehavior" />
    </services>
  </system.serviceModel>
</configuration> 

Vedere anche

Riferimento

SendMessageChannelCache
SendMessageChannelCacheElement
Send

Altre risorse

Changing the Cache Sharing Levels for Send Activities

Data di compilazione: 2010-02-13