Partilhar via


WorkflowPersistenceService Classe

Definição

Cuidado

The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*

A classe base abstrata da qual todos os serviços de persistência são derivados.

public ref class WorkflowPersistenceService abstract : System::Workflow::Runtime::Hosting::WorkflowRuntimeService
public abstract class WorkflowPersistenceService : System.Workflow.Runtime.Hosting.WorkflowRuntimeService
[System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
public abstract class WorkflowPersistenceService : System.Workflow.Runtime.Hosting.WorkflowRuntimeService
type WorkflowPersistenceService = class
    inherit WorkflowRuntimeService
[<System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")>]
type WorkflowPersistenceService = class
    inherit WorkflowRuntimeService
Public MustInherit Class WorkflowPersistenceService
Inherits WorkflowRuntimeService
Herança
WorkflowPersistenceService
Derivado
Atributos

Comentários

Observação

Este material discute tipos e namespaces obsoletos. Para obter mais informações, consulte Deprecated Types in Windows Workflow Foundation 4.5 (Tipos preteridos no Windows Workflow Foundation 4.5).

Quando determinadas condições ocorrem enquanto o fluxo de trabalho está em execução, o mecanismo de runtime de fluxo de trabalho persiste informações de estado sobre a instância de fluxo de trabalho. A persistência pode ocorrer, por exemplo, quando uma transação atômica é concluída, quando a instância de fluxo de trabalho fica ociosa, quando o host chama WorkflowInstance.Unload na instância de fluxo de trabalho ou quando uma instância de fluxo de trabalho é encerrada ou termina. Quando a semântica do mecanismo de runtime de fluxo de trabalho determina que a persistência deve ocorrer, o mecanismo de runtime de fluxo de trabalho chama métodos fornecidos por um serviço de persistência para salvar informações de estado sobre a instância de fluxo de trabalho. Da mesma forma, quando o mecanismo de runtime de fluxo de trabalho precisa restaurar uma instância de fluxo de trabalho persistente anteriormente, ele chama métodos fornecidos pelo serviço de persistência para carregar essas informações de estado. O mecanismo de runtime de fluxo de trabalho manipula toda a semântica sobre quando executar persistência. O serviço de persistência manipula, na verdade, salvar e carregar as informações de estado do fluxo de trabalho de ou para um armazenamento de dados.

Você pode criar um serviço de persistência derivando uma classe da WorkflowPersistenceService classe . Você pode adicionar seu serviço de persistência ao mecanismo de runtime de fluxo de trabalho chamando AddService ou fazendo uma entrada apropriada no arquivo de configuração do aplicativo. O WorkflowRuntime deve conter apenas um serviço de persistência. O Windows Workflow Foundation fornece a SqlWorkflowPersistenceService classe , um serviço de persistência pronto para uso, que você pode usar como está ou estender.

O mecanismo de runtime de fluxo de trabalho tem semântica para bloquear informações de estado de fluxo de trabalho para uso em ambientes em que os serviços de persistência executados em processos diferentes podem ter acesso a um único armazenamento de dados. A WorkflowPersistenceService classe fornece a capacidade de dar suporte a essa funcionalidade do mecanismo de runtime de fluxo de trabalho fornecendo um parâmetro para SaveWorkflowInstanceState que especifica se as informações de estado de uma instância de fluxo de trabalho devem ser desbloqueadas no armazenamento de dados e fornecendo um método UnlockWorkflowInstanceState para desbloquear informações de estado de fluxo de trabalho bloqueadas anteriormente. Em um serviço de persistência que implementa o bloqueio, uma chamada para LoadWorkflowInstanceState deve bloquear as informações de estado de uma instância de fluxo de trabalho.

Seu serviço de persistência deverá gerar um PersistenceException caso não consiga salvar informações de estado em seu armazenamento de dados ou carregar informações de estado de seu armazenamento de dados. O mecanismo de runtime de fluxo de trabalho espera esse comportamento.

Um mecanismo de envio em lote é fornecido para serviços que usam um repositório durável para salvar informações de estado do fluxo de trabalho. Nesses casos, é importante manter a consistência entre o repositório durável usado pelo serviço de persistência e o estado interno do mecanismo de runtime de fluxo de trabalho. Você pode adicionar a funcionalidade definida pela IPendingWork interface ao serviço e, em seguida, participar do envio em lote de transações de fluxo de trabalho fornecido pelo WorkflowCommitWorkBatchService adicionando alterações ao armazenamento de dados como itens de trabalho ao WorkBatch. O repositório durável em si deve implementar a interface para que as IEnlistmentNotification informações de fluxo de trabalho não sejam mantidas incorretamente no caso de uma reversão de transação. Para obter mais informações, consulte SaveCompletedContextActivity ou SaveWorkflowInstanceState.

Construtores

WorkflowPersistenceService()
Obsoleto.

Quando implementado em uma classe derivada, inicializa uma nova instância da classe WorkflowPersistenceService.

Propriedades

Runtime
Obsoleto.

Obtém o WorkflowRuntime para este serviço.

(Herdado de WorkflowRuntimeService)
State
Obsoleto.

Obtém o estado do WorkflowRuntimeService.

(Herdado de WorkflowRuntimeService)

Métodos

Equals(Object)
Obsoleto.

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetDefaultSerializedForm(Activity)
Obsoleto.

Recupera o formato padrão serializado da Activity.

GetHashCode()
Obsoleto.

Serve como a função de hash padrão.

(Herdado de Object)
GetIsBlocked(Activity)
Obsoleto.

Indica se a atividade fornecida está bloqueada.

GetSuspendOrTerminateInfo(Activity)
Obsoleto.

Recupera as informações de término ou de suspensão da atividade fornecida.

GetType()
Obsoleto.

Obtém o Type da instância atual.

(Herdado de Object)
GetWorkflowStatus(Activity)
Obsoleto.

Recupera o status do fluxo de trabalho.

LoadCompletedContextActivity(Guid, Activity)
Obsoleto.

Quando implementada em uma classe derivada, carrega o escopo concluído especificado novamente na memória.

LoadWorkflowInstanceState(Guid)
Obsoleto.

Quando implementada em uma classe derivada, carrega o estado especificado da instância de fluxo de trabalho novamente na memória.

MemberwiseClone()
Obsoleto.

Cria uma cópia superficial do Object atual.

(Herdado de Object)
OnStarted()
Obsoleto.

Quando substituído em uma classe derivada, representa o método que será chamado quando o mecanismo de runtime de fluxo de trabalho gerar o evento Started.

(Herdado de WorkflowRuntimeService)
OnStopped()
Obsoleto.

Quando substituído em uma classe derivada, representa o método que será chamado quando o mecanismo de runtime de fluxo de trabalho gerar o evento Stopped.

(Herdado de WorkflowRuntimeService)
RaiseServicesExceptionNotHandledEvent(Exception, Guid)
Obsoleto.

Aciona o evento ServicesExceptionNotHandled.

(Herdado de WorkflowRuntimeService)
RestoreFromDefaultSerializedForm(Byte[], Activity)
Obsoleto.

Restaura a atividade Activity de sua forma serializada.

SaveCompletedContextActivity(Activity)
Obsoleto.

Quando implementada em uma classe derivada, salva o escopo concluído especificado em um armazenamento de dados.

SaveWorkflowInstanceState(Activity, Boolean)
Obsoleto.

Quando implementado em uma classe derivada, salva o estado da instância de fluxo de trabalho em um armazenamento de dados.

Start()
Obsoleto.

Quando substituído em uma classe derivada, inicia o serviço e altera o State para Starting.

(Herdado de WorkflowRuntimeService)
Stop()
Obsoleto.

Quando substituído em uma classe derivada, interrompe o serviço e altera o State para Stopping.

(Herdado de WorkflowRuntimeService)
ToString()
Obsoleto.

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)
UnloadOnIdle(Activity)
Obsoleto.

Determina se um fluxo de trabalho deve ser descarregado quando ocioso.

UnlockWorkflowInstanceState(Activity)
Obsoleto.

Quando substituído em uma classe derivada, desbloqueia o estado da instância de fluxo de trabalho.

Aplica-se a