TrackingService 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.*
Fornece a interface básica entre um serviço de rastreamento e a infraestrutura de rastreamento em tempo de execução.
public ref class TrackingService abstract : System::Workflow::Runtime::Hosting::WorkflowRuntimeService
public abstract class TrackingService : 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 TrackingService : System.Workflow.Runtime.Hosting.WorkflowRuntimeService
type TrackingService = class
inherit WorkflowRuntimeService
[<System.Obsolete("The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*")>]
type TrackingService = class
inherit WorkflowRuntimeService
Public MustInherit Class TrackingService
Inherits WorkflowRuntimeService
- Herança
- Derivado
- Atributos
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.
Um serviço de rastreamento é responsável por fornecer canais e perfis de rastreio ao motor de execução do fluxo de trabalho. O motor de execução em tempo de trabalho solicita um TrackingChannel a um serviço de rastreamento para cada instância de workflow para a qual possui um TrackingProfile. O motor de execução de workflow utiliza isto TrackingChannel para enviar registos de tracking associados a essa instância de workflow. A contém pontos de rastreio que especificam um conjunto de eventos de rastreio para os quais a infraestrutura de rastreio em tempo de execução deve enviar registos TrackingProfile de rastreio. A TrackingProfile pode também especificar dados a serem extraídos da instância do fluxo de trabalho quando ocorre um destes eventos de rastreamento.
A infraestrutura de monitorização em tempo de execução utiliza um TrackingProfile para filtrar eventos de rastreio emitidos por uma instância de workflow. Quando é emitido um evento de rastreamento que corresponde a um ponto de rastreio no TrackingProfile, a infraestrutura de rastreamento em tempo de execução extrai quaisquer dados especificados no TrackingProfile do fluxo de trabalho da instância do fluxo de trabalho e encapsula esses dados e informações sobre o evento de rastreio num registo de rastreio. Este registo de rastreio é então enviado para a TrackingChannel instância associada ao fluxo de trabalho. Um registo de rastreamento pode ser de um dos seguintes tipos:
A aplicação anfitriã pode usar o registo de rastreio da forma que desejar. Por exemplo, a aplicação anfitriã pode armazenar a informação de rastreamento numa base de dados e usá-la para implementar uma interface de utilizador sofisticada, ou pode usar a informação para informar um administrador de uma condição que exija alguma ação. Pode registar um serviço de rastreamento com o motor de execução do workflow ligando WorkflowRuntime.AddService ou incluindo a entrada apropriada no ficheiro de configuração da aplicação.
Todos os serviços de rastreamento devem herdar da TrackingService classe abstrata. Esta classe define a interface básica entre um serviço de rastreamento e a infraestrutura de rastreamento em tempo de execução. O motor de execução do workflow solicita a TrackingProfile para uma instância ou workflow Type específica ao chamar um dos métodos sobrecarregados GetProfile ou o TryGetProfile método. O motor de execução do workflow chama GetTrackingChannel para solicitar um TrackingChannel.
O tempo de execução do acompanhamento do fluxo de trabalho chama os GetProfile métodos e TryGetProfile sempre que uma instância de workflow é criada ou carregada a partir do armazenamento de persistência. A sobrecarga associada a estas chamadas pode ser dispendiosa para o serviço de rastreamento (muitas chamadas de base de dados, por exemplo). Pode implementar a IProfileNotification interface no seu serviço de rastreamento para contornar este mecanismo baseado em chamadas e usar eventos para notificar o motor de execução do fluxo de trabalho sobre alterações a um TrackingProfile. Para os serviços de rastreio que implementam a IProfileNotification interface, o motor de execução de workflow subscreve os ProfileUpdated eventos e ProfileRemoved . O seu serviço de rastreamento pode gerar o evento apropriado quando ocorre uma alteração num dos seus perfis de rastreamento. A SqlTrackingService classe implementa esta interface.
O motor de execução do workflow chama o TryReloadProfile método para testar se a TrackingProfile foi atualizado ou removido como resultado de uma chamada explícita por parte de um host ou de um serviço para ReloadTrackingProfiles numa instância de workflow. Este processo permite que um host ou serviço altere dinamicamente o perfil de tracking que está a ser usado para uma instância de fluxo de trabalho específica.
Notas para Implementadores
Quando herdar de TrackingService, deve sobrepor-se aos seguintes membros: GetProfile(Guid)
Construtores
| Name | Description |
|---|---|
| TrackingService() |
Obsoleto.
Quando implementado numa classe derivada, inicializa uma nova instância da TrackingService classe. |
Propriedades
| Name | Description |
|---|---|
| Runtime |
Obsoleto.
Recebe por WorkflowRuntime este serviço. (Herdado de WorkflowRuntimeService) |
| 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) |
| GetHashCode() |
Obsoleto.
Serve como função de hash predefinida. (Herdado de Object) |
| GetProfile(Guid) |
Obsoleto.
Deve ser sobrescrito na classe derivada e, quando implementado, devolve o perfil de rastreio para a instância de workflow especificada. |
| GetProfile(Type, Version) |
Obsoleto.
Deve ser sobrescrito na classe derivada e, quando implementado, devolve o perfil de rastreio, qualificado por versão, para o fluxo de trabalho Typeespecificado . |
| GetTrackingChannel(TrackingParameters) |
Obsoleto.
Deve ser sobreposto na classe derivada e, quando implementado, devolve o canal que a infraestrutura de rastreamento em tempo de execução utiliza para enviar registos de rastreio ao serviço de rastreamento. |
| GetType() |
Obsoleto.
Obtém o Type da instância atual. (Herdado de Object) |
| MemberwiseClone() |
Obsoleto.
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| OnStarted() |
Obsoleto.
Quando sobreposto numa classe derivada, representa o método que será chamado quando o motor de execução do workflow gerar o Started evento. (Herdado de WorkflowRuntimeService) |
| 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) |
| Start() |
Obsoleto.
Quando sobrescrito numa classe derivada, inicia o serviço e muda o State para Starting. (Herdado de WorkflowRuntimeService) |
| Stop() |
Obsoleto.
Quando sobreposto numa classe derivada, para o serviço e altera o State para Stopping. (Herdado de WorkflowRuntimeService) |
| ToString() |
Obsoleto.
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |
| TryGetProfile(Type, TrackingProfile) |
Obsoleto.
Deve ser sobrescrito na classe derivada e, quando implementado, recupera o perfil de rastreio para o tipo de fluxo de trabalho especificado, se estiver disponível. |
| TryReloadProfile(Type, Guid, TrackingProfile) |
Obsoleto.
Deve ser sobrescrito na classe derivada e, quando implementado, recupera um novo perfil de tracking para a instância de workflow especificada se o perfil de tracking tiver mudado desde a última vez que foi carregado. |