Compartilhar via


Como: configurar a persistência com WorkflowServiceHost

Este artigo descreve como configurar o recurso Repositório de instância de fluxo de trabalho SQL para ativar persistência para os fluxos de trabalho hospedados em WorkflowServiceHost usando um arquivo de configuração. Antes de usar o recurso Repositório de instância de fluxo de trabalho SQL, você deve criar um banco de dados SQL que é usado para manter instâncias de fluxo de trabalho. Para obter mais informações, consulte Como ativar a persistência SQL para fluxos de trabalho e serviços de fluxo de trabalho.

Para configurar o repositório de instâncias de fluxo de trabalho do SQL em Configuração

  1. As propriedades do repositório de instâncias de fluxo de trabalho do SQL podem ser configuradas por meio do SqlWorkflowInstanceStoreBehavior, um comportamento de serviço que permite alterar as definições por meio da configuração XML. O seguinte exemplo de configuração mostra como configurar o repositório de instâncias de fluxo de trabalho do SQL usando o elemento do comportamento <sqlWorkflowInstanceStore> em um arquivo de configuração.

    <serviceBehaviors>
        <behavior name="">
            <sqlWorkflowInstanceStore
                 connectionString="...;Async=true"
                 instanceEncodingOption="GZip | None"
                 instanceCompletionAction="DeleteAll | DeleteNothing"
                 instanceLockedExceptionAction="NoRetry | SimpleRetry | AggressiveRetry"
                 hostLockRenewalPeriod="00:00:30"
                 runnableInstancesDetectionPeriod="00:00:05">
            </sqlWorkflowInstanceStore>
        </behavior>
    </serviceBehaviors>
    

    Para obter mais informações sobre como configurar o repositório de instâncias de fluxo de trabalho do SQL, consulte Como habilitar a persistência do SQL para fluxos de trabalho e serviços de fluxo de trabalho. Para obter mais informações sobre as definições individuais para o elemento de comportamento <sqlWorkflowInstanceStore>, consulte o Repositório de instâncias de fluxo de trabalho do SQL.

    Observação

    O exemplo de configuração anterior usa configuração simplificada. Para obter mais informações, consulte Configuração simplificada

Para configurar o repositório de instâncias de fluxo de trabalho do SQL em Código

  1. As propriedades do repositório de instâncias de fluxo de trabalho do SQL podem ser configuradas por meio do SqlWorkflowInstanceStoreBehavior, um comportamento de serviço que permite alterar as definições por meio de código. O seguinte exemplo mostra como configurar o repositório de instâncias de fluxo de trabalho do SQL usando o elemento do comportamento SqlWorkflowInstanceStoreBehavior em um código.

    host.Description.Behaviors.Add(new SqlWorkflowInstanceStoreBehavior
    {
       ConnectionString = "...;Async=true",
       InstanceEncodingOption = "GZip | None",
       InstanceCompletionAction = "DeleteAll | DeleteNothing",
       InstanceLockedExceptionAction = "NoRetry | SimpleRetry | AggressiveRetry",
       HostLockRenewalPeriod = new TimeSpan(00, 00, 30),
       RunnableInstancesDetectionPeriod = new TimeSpan(00, 00, 05)
    });
    

    Para obter mais informações sobre como configurar o repositório de instâncias de fluxo de trabalho do SQL, consulte Como habilitar a persistência do SQL para fluxos de trabalho e serviços de fluxo de trabalho. Para obter mais informações sobre as definições individuais para o elemento de comportamento SqlWorkflowInstanceStoreBehavior, consulte o Repositório de instâncias de fluxo de trabalho do SQL.

    Observação

    O exemplo de configuração anterior usa configuração simplificada. Para obter mais informações, consulte Configuração simplificada

    Para obter um exemplo de como configurar a persistência programaticamente, consulte Como habilitar a persistência para fluxos de trabalho e serviços de fluxo de trabalho.

Confira também