TrackingService Klasse

Definition

Achtung

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

Stellt die grundlegende Schnittstelle zwischen einem Nachverfolgungsdienst und der Laufzeitnachverfolgungsinfrastruktur bereit.

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
Vererbung
TrackingService
Abgeleitet
Attribute

Hinweise

Hinweis

In diesem Material werden veraltete Typen und Namespaces erläutert. Weitere Informationen finden Sie unter Veraltete Typen in Windows Workflow Foundation 4.5.

Ein Überwachungsdienst übernimmt die Bereitstellung von Verfolgungskanälen und Verfolgungsprofilen für die Workflowruntime-Engine. Die Workflowruntime-Engine fordert von einem Überwachungsdienst einen TrackingChannel für jede Workflowinstanz an, für die ein TrackingProfile vorhanden ist. Mit diesem TrackingChannel übermittelt die Workflowruntime-Engine der Workflowinstanz zugeordnete Verfolgungsprofile. Ein TrackingProfile enthält Verfolgungspunkte, die eine Reihe von Verfolgungsereignissen angeben, für die die Laufzeitverfolgungsinfrastruktur Verfolgungsdatensätze senden soll. Ein TrackingProfile kann auch Daten angeben, die aus der Workflowinstanz extrahiert werden sollen, wenn eines dieser Verfolgungsereignisse eintritt.

Die Laufzeitverfolgungsinfrastruktur verwendet ein TrackingProfile, um von einer Workflowinstanz ausgegebene Verfolgungsereignisse zu filtern. Wenn ein Verfolgungsereignis ausgegeben wird, das mit einem Verfolgungspunkt im TrackingProfile übereinstimmt, extrahiert die Laufzeitverfolgungsinfrastruktur die im TrackingProfile angegebenen Daten aus der Workflowinstanz und kapselt diese Daten und Informationen zum Verfolgungsereignis in einen Verfolgungsdatensatz ein. Dieser Verfolgungsdatensatz wird dann über den TrackingChannel gesendet, der der Workflowinstanz zugeordnet ist. Bei einem Nachverfolgungsdatensatz kann es sich um eine der folgenden Arten handeln:

ActivityTrackingRecord

UserTrackingRecord

WorkflowTrackingRecord

Der Verfolgungsdatensatz kann von der Hostanwendung beliebig verwendet werden. Eine Hostanwendung kann die Verfolgungsinformationen z. B. in einer Datenbank speichern und damit eine anspruchsvolle Benutzeroberfläche implementieren, oder ein Administrator kann mit den Informationen über Bedingungen informiert werden, die Maßnahmen erfordern. Sie können einen Überwachungsdienst bei der Workflowruntime-Engine registrieren, indem Sie WorkflowRuntime.AddService aufrufen oder indem Sie einen entsprechenden Eintrag in die Anwendungskonfigurationsdatei aufnehmen.

Alle Überwachungsdienste müssen von der abstrakten TrackingService-Klasse erben. Diese Klasse definiert die grundlegende Schnittstelle zwischen einem Überwachungsdienst und der Laufzeitverfolgungsinfrastruktur. Die Workflowruntime-Engine fordert ein TrackingProfile für eine bestimmte Workflowinstanz oder einen Workflow-Type an, indem sie eine der überladenen GetProfile-Methoden oder die TryGetProfile-Methode aufruft. Die Workflowruntime-Engine ruft GetTrackingChannel auf, um einen TrackingChannel anzufordern.

Die Laufzeitverfolgungsinfrastruktur ruft die Methoden GetProfile und TryGetProfile immer dann auf, wenn eine Workflowinstanz erstellt oder aus dem Persistenzspeicher geladen wird. Der mit diesen Aufrufen verbundene Aufwand kann den Überwachungsdienst stark auslasten (z. B. durch viele Datenbankaufrufe). Um diesen aufrufbasierten Mechanismus zu umgehen, können Sie die IProfileNotification-Schnittstelle in den Überwachungsdienst aufnehmen und die Workflowruntime-Engine mithilfe von Ereignissen über Änderungen eines TrackingProfile benachrichtigen. Für Überwachungsdienste, die die IProfileNotification-Schnittstelle implementieren, abonniert die Workflowruntime-Engine die Ereignisse ProfileUpdated und ProfileRemoved. Der Überwachungsdienst kann das entsprechende Ereignis bei einer Änderung eines seiner Verfolgungsprofile auslösen. Die SqlTrackingService-Klasse implementiert diese Schnittstelle.

Die Workflowruntime-Engine ruft die TryReloadProfile-Methode auf, um zu testen, ob ein TrackingProfile aufgrund eines ausdrücklichen Aufrufs von ReloadTrackingProfiles durch einen Host oder einen Dienst in einer Workflowinstanz aktualisiert oder entfernt wurde. Dieser Prozess ermöglicht es einem Host oder Dienst, das für eine bestimmte Workflowinstanz verwendete Verfolgungsprofil dynamisch zu ändern.

Hinweise für Ausführende

Konstruktoren

TrackingService()
Veraltet.

Initialisiert beim Implementieren in einer abgeleiteten Klasse eine neue Instanz der TrackingService-Klasse.

Eigenschaften

Runtime
Veraltet.

Ruft WorkflowRuntime für diesen Dienst ab.

(Geerbt von WorkflowRuntimeService)
State
Veraltet.

Ruft den Zustand der WorkflowRuntimeService ab.

(Geerbt von WorkflowRuntimeService)

Methoden

Equals(Object)
Veraltet.

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()
Veraltet.

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetProfile(Guid)
Veraltet.

Muss in der abgeleiteten Klasse überschrieben werden und gibt bei der Implementierung das Verfolgungsprofil für die angegebene Workflowinstanz zurück.

GetProfile(Type, Version)
Veraltet.

Muss in der abgeleiteten Klasse überschrieben werden und gibt bei der Implementierung das durch die Version bestimmte Verfolgungsprofil für den angegebenen Workflow-Type zurück.

GetTrackingChannel(TrackingParameters)
Veraltet.

Muss in der abgeleiteten Klasse überschrieben werden und gibt bei der Implementierung den Kanal zurück, über den die Laufzeitverfolgungsinfrastruktur Verfolgungsdatensätze an den Überwachungsdienst sendet.

GetType()
Veraltet.

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()
Veraltet.

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
OnStarted()
Veraltet.

Stellt beim Überschreiben in einer abgeleiteten Klasse die Methode dar, die aufgerufen wird, wenn die Workflowruntime-Engine das Started-Ereignis auslöst.

(Geerbt von WorkflowRuntimeService)
OnStopped()
Veraltet.

Stellt beim Überschreiben in einer abgeleiteten Klasse die Methode dar, die aufgerufen wird, wenn die Workflowruntime-Engine das Stopped-Ereignis auslöst.

(Geerbt von WorkflowRuntimeService)
RaiseServicesExceptionNotHandledEvent(Exception, Guid)
Veraltet.

Löst das ServicesExceptionNotHandled-Ereignis aus.

(Geerbt von WorkflowRuntimeService)
Start()
Veraltet.

Startet beim Überschreiben in einer abgeleiteten Klasse den Dienst und ändert State in Starting.

(Geerbt von WorkflowRuntimeService)
Stop()
Veraltet.

Beendet beim Überschreiben in einer abgeleiteten Klasse den Dienst und ändert State in Stopping.

(Geerbt von WorkflowRuntimeService)
ToString()
Veraltet.

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)
TryGetProfile(Type, TrackingProfile)
Veraltet.

Muss in der abgeleiteten Klasse überschrieben werden und ruft bei der Implementierung das Verfolgungsprofil für den angegebenen Workflowtyp ab, sofern ein Typ verfügbar ist.

TryReloadProfile(Type, Guid, TrackingProfile)
Veraltet.

Muss in der abgeleiteten Klasse überschrieben werden und ruft bei der Implementierung ein neues Verfolgungsprofil für die angegebene Workflowinstanz ab, wenn sich das Verfolgungsprofil seit dem letzten Laden geändert hat.

Gilt für:

Weitere Informationen