TrackingService Classe

Definizione

Attenzione

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

Fornisce l'interfaccia di base tra un servizio di rilevamento e l'infrastruttura di rilevamento in fase di esecuzione.

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
Ereditarietà
TrackingService
Derivato
Attributi

Commenti

Note

Questo materiale illustra i tipi e gli spazi dei nomi obsoleti. Per altre informazioni, vedere Deprecated Types in Windows Workflow Foundation 4.5.

Un servizio di rilevamento è responsabile della fornitura di canali di rilevamento e profili di rilevamento al motore di runtime del flusso di lavoro. Il motore di runtime del flusso di lavoro richiede uno TrackingChannel da un servizio di rilevamento per ogni istanza del flusso di lavoro per cui dispone di un oggetto TrackingProfile. Il motore di runtime del flusso di lavoro usa questa opzione TrackingChannel per inviare i record di rilevamento associati a tale istanza del flusso di lavoro. Un TrackingProfile oggetto contiene i punti di rilevamento che specificano un set di eventi di rilevamento per i quali l'infrastruttura di rilevamento in fase di esecuzione deve inviare record di rilevamento. Un TrackingProfile può inoltre specificare i dati da estrarre dall'istanza del flusso di lavoro quando si verifica uno di questi eventi di rilevamento.

L'infrastruttura di rilevamento in fase di esecuzione usa un TrackingProfile oggetto per filtrare gli eventi di rilevamento generati da un'istanza del flusso di lavoro. Quando viene generato un evento di rilevamento che corrisponde a un punto di rilevamento in TrackingProfile, l'infrastruttura di rilevamento di runtime estrae tutti i dati specificati nell'istanza TrackingProfile del flusso di lavoro e incapsula questi dati e informazioni sull'evento di rilevamento in un record di rilevamento. Questo record di rilevamento viene quindi inviato sull'oggetto TrackingChannel associato all'istanza del flusso di lavoro. Un record di rilevamento può essere uno dei tipi seguenti:

ActivityTrackingRecord

UserTrackingRecord

WorkflowTrackingRecord

L'applicazione host può usare il record di rilevamento in qualsiasi modo scelto. Ad esempio, l'applicazione host può archiviare le informazioni di rilevamento in un database e usarla per implementare un'interfaccia utente sofisticata oppure può usare le informazioni per informare un amministratore di una condizione che richiede un'azione. È possibile registrare un servizio di rilevamento con il motore di runtime del flusso di lavoro chiamando WorkflowRuntime.AddService o includendo la voce appropriata nel file di configurazione dell'applicazione.

Tutti i servizi di rilevamento devono ereditare dalla TrackingService classe astratta. Questa classe definisce l'interfaccia di base tra un servizio di rilevamento e l'infrastruttura di rilevamento in fase di esecuzione. Il motore di runtime del flusso di lavoro richiede un oggetto TrackingProfile per un'istanza o un flusso di lavoro Type specifico chiamando uno dei metodi di GetProfile overload o il TryGetProfile metodo . Il motore di runtime del flusso di lavoro chiama GetTrackingChannel per richiedere un oggetto TrackingChannel.

Il runtime di rilevamento del flusso di lavoro chiama i GetProfile metodi e TryGetProfile ogni volta che un'istanza del flusso di lavoro viene creata o caricata dall'archivio di persistenza. Il sovraccarico associato a queste chiamate può essere costoso per il servizio di rilevamento (ad esempio molte chiamate di database). È possibile implementare l'interfaccia IProfileNotification nel servizio di rilevamento per aggirare questo meccanismo basato su chiamata e usare gli eventi per notificare al motore di runtime del flusso di lavoro le modifiche a un oggetto TrackingProfile. Per i servizi di rilevamento che implementano l'interfaccia IProfileNotification , il motore di runtime del flusso di lavoro sottoscrive gli ProfileUpdated eventi e ProfileRemoved . Il servizio di rilevamento può generare l'evento appropriato quando si verifica una modifica a uno dei relativi profili di rilevamento. La SqlTrackingService classe implementa questa interfaccia.

Il motore di runtime del flusso di lavoro chiama il TryReloadProfile metodo per verificare se un oggetto TrackingProfile è stato aggiornato o rimosso in seguito a una chiamata esplicita da un host o da un servizio a ReloadTrackingProfiles in un'istanza del flusso di lavoro. Questo processo consente a un host o a un servizio di modificare dinamicamente il profilo di rilevamento usato per un'istanza del flusso di lavoro specifica.

Note per gli implementatori

Costruttori

Nome Descrizione
TrackingService()
Obsoleti.

Se implementato in una classe derivata, inizializza una nuova istanza della TrackingService classe .

Proprietà

Nome Descrizione
Runtime
Obsoleti.

Ottiene l'oggetto WorkflowRuntime per questo servizio.

(Ereditato da WorkflowRuntimeService)
State
Obsoleti.

Ottiene lo stato dell'oggetto WorkflowRuntimeService.

(Ereditato da WorkflowRuntimeService)

Metodi

Nome Descrizione
Equals(Object)
Obsoleti.

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()
Obsoleti.

Funge da funzione hash predefinita.

(Ereditato da Object)
GetProfile(Guid)
Obsoleti.

Deve essere sottoposto a override nella classe derivata e, quando implementato, restituisce il profilo di rilevamento per l'istanza del flusso di lavoro specificata.

GetProfile(Type, Version)
Obsoleti.

Deve essere sottoposto a override nella classe derivata e, se implementato, restituisce il profilo di rilevamento, qualificato per versione, per il flusso di lavoro Typespecificato.

GetTrackingChannel(TrackingParameters)
Obsoleti.

Deve essere sottoposto a override nella classe derivata e, quando implementato, restituisce il canale usato dall'infrastruttura di rilevamento in fase di esecuzione per inviare record di rilevamento al servizio di rilevamento.

GetType()
Obsoleti.

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
MemberwiseClone()
Obsoleti.

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
OnStarted()
Obsoleti.

Quando sottoposto a override in una classe derivata, rappresenta il metodo che verrà chiamato quando il motore di runtime del flusso di lavoro genera l'evento Started .

(Ereditato da WorkflowRuntimeService)
OnStopped()
Obsoleti.

Quando sottoposto a override in una classe derivata, rappresenta il metodo che verrà chiamato quando il motore di runtime del flusso di lavoro genera l'evento Stopped .

(Ereditato da WorkflowRuntimeService)
RaiseServicesExceptionNotHandledEvent(Exception, Guid)
Obsoleti.

Genera l'evento ServicesExceptionNotHandled.

(Ereditato da WorkflowRuntimeService)
Start()
Obsoleti.

Quando sottoposto a override in una classe derivata, avvia il servizio e modifica in StateStarting.

(Ereditato da WorkflowRuntimeService)
Stop()
Obsoleti.

Quando sottoposto a override in una classe derivata, arresta il servizio e modifica in StateStopping.

(Ereditato da WorkflowRuntimeService)
ToString()
Obsoleti.

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)
TryGetProfile(Type, TrackingProfile)
Obsoleti.

Deve essere sottoposto a override nella classe derivata e, se implementato, recupera il profilo di rilevamento per il tipo di flusso di lavoro specificato, se disponibile.

TryReloadProfile(Type, Guid, TrackingProfile)
Obsoleti.

Deve essere sottoposto a override nella classe derivata e, quando implementato, recupera un nuovo profilo di rilevamento per l'istanza del flusso di lavoro specificata se il profilo di rilevamento è stato modificato dopo l'ultimo caricamento.

Si applica a

Vedi anche