TrackingService TrackingService TrackingService TrackingService Class

Definition

Warnung

Diese API ist jetzt veraltet.

Stellt die grundlegende Schnittstelle zwischen einem Nachverfolgungsdienst und der Laufzeitnachverfolgungsinfrastruktur bereit.Provides the basic interface between a tracking service and the run-time tracking infrastructure.

public ref class TrackingService abstract : 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
Public MustInherit Class TrackingService
Inherits WorkflowRuntimeService
Vererbung
Abgeleitet
Attribute

Hinweise

Hinweis

In diesem Material werden veraltete Typen und Namespaces erläutert.This material discusses types and namespaces that are obsolete. Weitere Informationen finden Sie unter Veraltete Typen in Windows Workflow Foundation 4.5.For more information, see Deprecated Types in Windows Workflow Foundation 4.5.

Ein Überwachungsdienst übernimmt die Bereitstellung von Verfolgungskanälen und Verfolgungsprofilen für die Workflowruntime-Engine.A tracking service is responsible for supplying tracking channels and tracking profiles to the workflow run-time engine. Die Workflowruntime-Engine fordert von einem Überwachungsdienst einen TrackingChannel für jede Workflowinstanz an, für die ein TrackingProfile vorhanden ist.The workflow run-time engine requests one TrackingChannel from a tracking service for each workflow instance for which it has a TrackingProfile. Mit diesem TrackingChannel übermittelt die Workflowruntime-Engine der Workflowinstanz zugeordnete Verfolgungsprofile.The workflow run-time engine uses this TrackingChannel to send tracking records associated with that workflow instance. Ein TrackingProfile enthält Verfolgungspunkte, die eine Reihe von Verfolgungsereignissen angeben, für die die Laufzeitverfolgungsinfrastruktur Verfolgungsdatensätze senden soll.A TrackingProfile contains track points that specify a set of tracking events for which the run-time tracking infrastructure should send tracking records. Ein TrackingProfile kann auch Daten angeben, die aus der Workflowinstanz extrahiert werden sollen, wenn eines dieser Verfolgungsereignisse eintritt.A TrackingProfile may also specify data to be extracted from the workflow instance when one of these tracking events occurs.

Die Laufzeitverfolgungsinfrastruktur verwendet ein TrackingProfile, um von einer Workflowinstanz ausgegebene Verfolgungsereignisse zu filtern.The run-time tracking infrastructure uses a TrackingProfile to filter tracking events emitted by a workflow instance. 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.When a tracking event is emitted that matches a track point in the TrackingProfile, the run-time tracking infrastructure extracts any data specified in the TrackingProfile from the workflow instance and encapsulates this data and information about the tracking event in a tracking record. Dieser Verfolgungsdatensatz wird dann über den TrackingChannel gesendet, der der Workflowinstanz zugeordnet ist.This tracking record is then sent over the TrackingChannel associated with the workflow instance. Bei einem Nachverfolgungsdatensatz kann es sich um eine der folgenden Arten handeln:A tracking record may be one of the following kinds:

ActivityTrackingRecord

UserTrackingRecord

WorkflowTrackingRecord

Der Verfolgungsdatensatz kann von der Hostanwendung beliebig verwendet werden.The host application can use the tracking record in any way that it chooses. 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.For example, the host application may store the tracking information in a database and use it to implement a sophisticated user interface, or it may use the information to inform an administrator of a condition that requires some action. 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.You can register a tracking service with the workflow run-time engine by calling WorkflowRuntime.AddService or by including the appropriate entry in the application configuration file.

Alle Überwachungsdienste müssen von der abstrakten TrackingService-Klasse erben.All tracking services must inherit from the TrackingService abstract class. Diese Klasse definiert die grundlegende Schnittstelle zwischen einem Überwachungsdienst und der Laufzeitverfolgungsinfrastruktur.This class defines the basic interface between a tracking service and the run-time tracking infrastructure. 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.The workflow run-time engine requests a TrackingProfile for a specific workflow instance or workflow Type by calling one of the overloaded GetProfile methods or the TryGetProfile method. Die Workflowruntime-Engine ruft GetTrackingChannel auf, um einen TrackingChannel anzufordern.The workflow run-time engine calls GetTrackingChannel to request a TrackingChannel.

Die Laufzeitverfolgungsinfrastruktur ruft die Methoden GetProfile und TryGetProfile immer dann auf, wenn eine Workflowinstanz erstellt oder aus dem Persistenzspeicher geladen wird.The workflow tracking runtime calls the GetProfile and TryGetProfile methods whenever a workflow instance is created or loaded from the persistence store. Der mit diesen Aufrufen verbundene Aufwand kann den Überwachungsdienst stark auslasten (z. B. durch viele Datenbankaufrufe).The overhead associated with these calls can be costly to the tracking service (many database calls, for example). 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.You can implement the IProfileNotification interface in your tracking service to circumvent this call-based mechanism and use events to notify the workflow runtime engine of changes to a TrackingProfile. Für Überwachungsdienste, die die IProfileNotification-Schnittstelle implementieren, abonniert die Workflowruntime-Engine die Ereignisse ProfileUpdated und ProfileRemoved.For tracking services that implement the IProfileNotification interface, the workflow run-time engine subscribes to the ProfileUpdated and ProfileRemoved events. Der Überwachungsdienst kann das entsprechende Ereignis bei einer Änderung eines seiner Verfolgungsprofile auslösen.Your tracking service can raise the appropriate event when a change to one of its tracking profiles occurs. Die SqlTrackingService-Klasse implementiert diese Schnittstelle.The SqlTrackingService class implements this interface.

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.The workflow run-time engine calls the TryReloadProfile method to test whether a TrackingProfile has been updated or removed as a result of an explicit call by a host or a service to ReloadTrackingProfiles on a workflow instance. Dieser Prozess ermöglicht es einem Host oder Dienst, das für eine bestimmte Workflowinstanz verwendete Verfolgungsprofil dynamisch zu ändern.This process enables a host or service to dynamically change the tracking profile that is being used for a specific workflow instance.

Hinweise für Vererber

: Wenn Sie von TrackingServiceerben, müssen Sie die folgenden Member überschreiben:GetProfile(Guid)- When you inherit from TrackingService, you must override the following members: GetProfile(Guid)

Konstruktoren

TrackingService() TrackingService() TrackingService() TrackingService()

Initialisiert beim Implementieren in einer abgeleiteten Klasse eine neue Instanz der TrackingService-Klasse.When implemented in a derived class, initializes a new instance of the TrackingService class.

Methoden

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Inherited from Object)
GetProfile(Guid) GetProfile(Guid) GetProfile(Guid) GetProfile(Guid)

Muss in der abgeleiteten Klasse überschrieben werden und gibt bei der Implementierung das Verfolgungsprofil für die angegebene Workflowinstanz zurück.Must be overridden in the derived class, and when implemented, returns the tracking profile for the specified workflow instance.

GetProfile(Type, Version) GetProfile(Type, Version) GetProfile(Type, Version) GetProfile(Type, Version)

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.Must be overridden in the derived class, and when implemented, returns the tracking profile, qualified by version, for the specified workflow Type.

GetTrackingChannel(TrackingParameters) GetTrackingChannel(TrackingParameters) GetTrackingChannel(TrackingParameters) GetTrackingChannel(TrackingParameters)

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.Must be overridden in the derived class, and when implemented, returns the channel that the run-time tracking infrastructure uses to send tracking records to the tracking service.

GetType() GetType() GetType() GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
OnStarted() OnStarted() OnStarted() OnStarted()

Stellt beim Überschreiben in einer abgeleiteten Klasse die Methode dar, die aufgerufen wird, wenn die Workflowruntime-Engine das Started-Ereignis auslöst.When overridden in a derived class, represents the method that will be called when the workflow runtime engine raises the Started event.

(Inherited from WorkflowRuntimeService)
OnStopped() OnStopped() OnStopped() OnStopped()

Stellt beim Überschreiben in einer abgeleiteten Klasse die Methode dar, die aufgerufen wird, wenn die Workflowruntime-Engine das Stopped-Ereignis auslöst.When overridden in a derived class, represents the method that will be called when the workflow runtime engine raises the Stopped event.

(Inherited from WorkflowRuntimeService)
RaiseServicesExceptionNotHandledEvent(Exception, Guid) RaiseServicesExceptionNotHandledEvent(Exception, Guid) RaiseServicesExceptionNotHandledEvent(Exception, Guid) RaiseServicesExceptionNotHandledEvent(Exception, Guid)

Löst das ServicesExceptionNotHandled-Ereignis aus.Raises the ServicesExceptionNotHandled event.

(Inherited from WorkflowRuntimeService)
Start() Start() Start() Start()

Startet beim Überschreiben in einer abgeleiteten Klasse den Dienst und ändert State in Starting.When overridden in a derived class, starts the service and changes the State to Starting.

(Inherited from WorkflowRuntimeService)
Stop() Stop() Stop() Stop()

Beendet beim Überschreiben in einer abgeleiteten Klasse den Dienst und ändert State in Stopping.When overridden in a derived class, stops the service and changes the State to Stopping.

(Inherited from WorkflowRuntimeService)
ToString() ToString() ToString() ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Inherited from Object)
TryGetProfile(Type, TrackingProfile) TryGetProfile(Type, TrackingProfile) TryGetProfile(Type, TrackingProfile) TryGetProfile(Type, TrackingProfile)

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.Must be overridden in the derived class, and when implemented, retrieves the tracking profile for the specified workflow type if one is available.

TryReloadProfile(Type, Guid, TrackingProfile) TryReloadProfile(Type, Guid, TrackingProfile) TryReloadProfile(Type, Guid, TrackingProfile) TryReloadProfile(Type, Guid, TrackingProfile)

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.Must be overridden in the derived class, and when implemented, retrieves a new tracking profile for the specified workflow instance if the tracking profile has changed since it was last loaded.

Eigenschaften

Runtime Runtime Runtime Runtime

Ruft WorkflowRuntime für diesen Dienst ab.Gets the WorkflowRuntime for this service.

(Inherited from WorkflowRuntimeService)
State State State State

Ruft den Zustand des WorkflowRuntimeService ab.Gets the state of the WorkflowRuntimeService.

(Inherited from WorkflowRuntimeService)

Gilt für:

Siehe auch