SqlWorkflowPersistenceService Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Atenção
The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*
Representa um serviço de persistência que utiliza uma base de dados SQL para armazenar informação sobre o estado do fluxo de trabalho.
public ref class SqlWorkflowPersistenceService : System::Workflow::Runtime::Hosting::WorkflowPersistenceService, System::Workflow::Runtime::IPendingWork
public class SqlWorkflowPersistenceService : System.Workflow.Runtime.Hosting.WorkflowPersistenceService, System.Workflow.Runtime.IPendingWork
[System.Obsolete("The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*")]
public class SqlWorkflowPersistenceService : System.Workflow.Runtime.Hosting.WorkflowPersistenceService, System.Workflow.Runtime.IPendingWork
type SqlWorkflowPersistenceService = class
inherit WorkflowPersistenceService
interface IPendingWork
[<System.Obsolete("The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*")>]
type SqlWorkflowPersistenceService = class
inherit WorkflowPersistenceService
interface IPendingWork
Public Class SqlWorkflowPersistenceService
Inherits WorkflowPersistenceService
Implements IPendingWork
- Herança
- Atributos
- Implementações
Observações
Note
Este material discute tipos e namespaces que estão obsoletos. Para mais informações, consulte Tipos Descontinuados no Windows Workflow Foundation 4.5.
A SqlWorkflowPersistenceService classe representa um serviço de persistência totalmente funcional. Pode usar este serviço logo de uso para persistir e recuperar informações sobre o estado do fluxo de trabalho sobre uma instância de workflow quando solicitado pelo motor de execução do workflow.
Participa SqlWorkflowPersistenceService na funcionalidade de lote de transações de fluxo de trabalho fornecida pelo WorkflowCommitWorkBatchService. Ou seja, adiciona objetos que representam escritas pendentes na base de dados SQL e WorkBatch implementa a IPendingWork interface.
Suporta SqlWorkflowPersistenceService o bloqueio de instâncias de workflow. Esta funcionalidade é utilizada quando vários workflow runtimes partilham a mesma base de dados. Uma coluna na tabela da base de dados SQL é usada para marcar uma instância de workflow como bloqueada sempre que está a ser usada por um workflow runtime. Não SqlWorkflowPersistenceService carrega uma instância de workflow marcada como "em uso" por outro runtime. Normalmente, estes bloqueios são libertados quando a instância do fluxo de trabalho é mantida, por exemplo, em inatividade, conclusão ou terminação. As fechaduras também podem ser libertadas automaticamente após um período de inatividade. Este período de inatividade pode ser definido usando o construtor da SqlWorkflowPersistenceService classe. Também pode ser definido através do ficheiro de configuração.
Para mais informações sobre serviços de persistência em geral, consulte a WorkflowPersistenceService aula.
Instâncias de workflow podem conter temporizadores, por exemplo, se tiverem um DelayActivity. Para fluxos de trabalho que contêm temporizadores, regista SqlWorkflowPersistenceService a hora em que o próximo temporizador do fluxo de trabalho expira. Periodicamente SqlWorkflowPersistenceService sonda a base de dados, procurando fluxos de trabalho cujos temporizadores tenham expirado. A frequência do intervalo de sondagem pode ser definida usando o SqlWorkflowPersistenceService construtor ou usando um ficheiro de configuração.
Note
Ao usar tanto o SqlTrackingService e como SqlWorkflowPersistenceService o numa aplicação de fluxo de trabalho, recomenda-se usar uma única base de dados tanto para persistência como para acompanhamento.
Construtores
| Name | Description |
|---|---|
| SqlWorkflowPersistenceService(NameValueCollection) |
Obsoleto.
Inicializa uma nova instância da SqlWorkflowPersistenceService classe usando os parâmetros especificados. |
| SqlWorkflowPersistenceService(String, Boolean, TimeSpan, TimeSpan) |
Obsoleto.
Inicializa uma nova instância da classe SqlWorkflowPersistenceService usando um cadeia de ligação de base de dados e outros parâmetros. |
| SqlWorkflowPersistenceService(String) |
Obsoleto.
Inicializa uma nova instância da classe SqlWorkflowPersistenceService usando a base de dados cadeia de ligação. |
Propriedades
| Name | Description |
|---|---|
| EnableRetries |
Obsoleto.
Recebe ou define um valor que especifica se as SqlWorkflowPersistenceService retentativas estão a comprometer um lote de trabalho. |
| LoadingInterval |
Obsoleto.
Obtém o comprimento do intervalo de carregamento. |
| Runtime |
Obsoleto.
Recebe por WorkflowRuntime este serviço. (Herdado de WorkflowRuntimeService) |
| ServiceInstanceId |
Obsoleto.
Obtém o identificador da instância de serviço. |
| State |
Obsoleto.
Obtém o estado do WorkflowRuntimeService. (Herdado de WorkflowRuntimeService) |
Métodos
| Name | Description |
|---|---|
| Equals(Object) |
Obsoleto.
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetAllWorkflows() |
Obsoleto.
Recupera as descrições das instâncias de todos os fluxos de trabalho persistentes. |
| GetHashCode() |
Obsoleto.
Serve como função de hash predefinida. (Herdado de Object) |
| GetType() |
Obsoleto.
Obtém o Type da instância atual. (Herdado de Object) |
| LoadCompletedContextActivity(Guid, Activity) |
Obsoleto.
Recupera o âmbito concluído especificado da base de dados. |
| LoadExpiredTimerWorkflowIds() |
Obsoleto.
Recupera uma lista de IDs para fluxos de trabalho com temporizadores expirados. |
| LoadWorkflowInstanceState(Guid) |
Obsoleto.
Recupera o estado especificado da instância do fluxo de trabalho da base de dados. |
| MemberwiseClone() |
Obsoleto.
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| OnStarted() |
Obsoleto.
Inicia um novo temporizador e recupera as instâncias de fluxo de trabalho em execução. |
| OnStopped() |
Obsoleto.
Quando sobreposto numa classe derivada, representa o método que será chamado quando o motor de execução do workflow gerar o Stopped evento. (Herdado de WorkflowRuntimeService) |
| RaiseServicesExceptionNotHandledEvent(Exception, Guid) |
Obsoleto.
Eleva o ServicesExceptionNotHandled evento. (Herdado de WorkflowRuntimeService) |
| SaveCompletedContextActivity(Activity) |
Obsoleto.
Poupa o estado do âmbito especificado e concluído. |
| SaveWorkflowInstanceState(Activity, Boolean) |
Obsoleto.
Guarda o estado especificado da instância do fluxo de trabalho. |
| Start() |
Obsoleto.
Inicia o SqlWorkflowPersistenceService. |
| Stop() |
Obsoleto.
Para o serviço e o temporizador. |
| ToString() |
Obsoleto.
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |
| UnloadOnIdle(Activity) |
Obsoleto.
Devolve um valor que indica se o fluxo de trabalho está descarregado quando está em estado de inatividade. |
| UnlockWorkflowInstanceState(Activity) |
Obsoleto.
Desbloqueia o acesso ao estado especificado da instância do fluxo de trabalho. |
Implementações de Interface Explícita
| Name | Description |
|---|---|
| IPendingWork.Commit(Transaction, ICollection) |
Obsoleto.
Escreve um ICollection conjunto de objetos de estado serializados na base de dados. |
| IPendingWork.Complete(Boolean, ICollection) |
Obsoleto.
Completa o lote de trabalho e liberta quaisquer recursos. |
| IPendingWork.MustCommit(ICollection) |
Obsoleto.
Devolve um valor que indica se a coleção de objetos de estado serializados deve ser escrita na base de dados. |