TrackingService Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Achtung
The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*
Stellt die grundlegende Schnittstelle zwischen einem Tracking-Dienst und der Laufzeitverfolgungsinfrastruktur 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
- Abgeleitet
- Attribute
Hinweise
Note
In diesem Material werden Typen und Namespaces erläutert, die veraltet sind. Weitere Informationen finden Sie unter Deprecated Types in Windows Workflow Foundation 4.5.
Ein Tracking-Dienst ist für die Bereitstellung von Tracking-Kanälen und Tracking-Profilen an das Workflow-Laufzeitmodul verantwortlich. Das Workflow-Laufzeitmodul fordert eines TrackingChannel von einem Tracking-Dienst für jede Workflowinstanz an, für die es eine TrackingProfilehat. Das Workflowausführungsmodul verwendet dies TrackingChannel zum Senden von Nachverfolgungsdatensätzen, die dieser Workflowinstanz zugeordnet sind. A TrackingProfile enthält Track points, die einen Satz von Nachverfolgungsereignissen angeben, für die die Laufzeitverfolgungsinfrastruktur Tracking-Datensätze senden soll. Eine TrackingProfile kann auch angeben, dass Daten aus der Workflowinstanz extrahiert werden sollen, wenn eines dieser Tracking-Ereignisse auftritt.
Die Laufzeitverfolgungsinfrastruktur verwendet eine TrackingProfile Zum Filtern von Nachverfolgungsereignissen, die von einer Workflowinstanz ausgegeben werden. Wenn ein Tracking-Ereignis ausgegeben wird, das einem Trackpoint im TrackingProfileBereich entspricht, extrahiert die Laufzeitverfolgungsinfrastruktur alle in der TrackingProfile Workflowinstanz angegebenen Daten und kapselt diese Daten und Informationen zum Tracking-Ereignis in einem Tracking-Datensatz. Dieser Tracking-Datensatz wird dann über die TrackingChannel zugeordnete Workflowinstanz gesendet. Ein Tracking-Datensatz kann eine der folgenden Arten sein:
Die Hostanwendung kann den Nachverfolgungsdatensatz auf beliebige Weise verwenden, die er auswäht. Beispielsweise kann die Hostanwendung die Nachverfolgungsinformationen in einer Datenbank speichern und verwenden, um eine komplexe Benutzeroberfläche zu implementieren, oder sie kann die Informationen verwenden, um einen Administrator über eine Bedingung zu informieren, die eine Aktion erfordert. Sie können einen Nachverfolgungsdienst beim Workflow-Laufzeitmodul registrieren, indem Sie den entsprechenden Eintrag in die Anwendungskonfigurationsdatei einschließen WorkflowRuntime.AddService .
Alle Tracking-Dienste müssen von der TrackingService abstrakten Klasse erben. Diese Klasse definiert die grundlegende Schnittstelle zwischen einem Tracking-Dienst und der Laufzeitverfolgungsinfrastruktur. Das Workflow-Laufzeitmodul fordert eine TrackingProfile für eine bestimmte Workflowinstanz oder einen bestimmten Workflow Type an, indem eine der überladenen Methoden oder die GetProfile Methode aufgerufen wirdTryGetProfile. Das Workflow-Laufzeitmodul ruft GetTrackingChannel auf, um eine Anforderung anzufordern TrackingChannel.
Die Workflowverfolgungslaufzeit ruft die GetProfile Und TryGetProfile Methoden auf, wenn eine Workflowinstanz erstellt oder aus dem Persistenzspeicher geladen wird. Der mit diesen Aufrufen verbundene Aufwand kann dem Nachverfolgungsdienst kostenintensiv sein (z. B. viele Datenbankaufrufe). Sie können die IProfileNotification Schnittstelle in Ihrem Tracking-Dienst implementieren, um diesen aufrufbasierten Mechanismus zu umgehen und Ereignisse zu verwenden, um das Workflowlaufzeitmodul über Änderungen an einem TrackingProfile. Zum Nachverfolgen von Diensten, die die IProfileNotification Schnittstelle implementieren, abonniert das Workflow-Laufzeitmodul die ProfileUpdated Ereignisse und ProfileRemoved Ereignisse. Ihr Tracking-Dienst kann das entsprechende Ereignis auslösen, wenn eine Änderung an einem seiner Tracking-Profile auftritt. Die SqlTrackingService Klasse implementiert diese Schnittstelle.
Das Workflow-Laufzeitmodul ruft die TryReloadProfile Methode auf, um zu testen, ob ein TrackingProfile Aufruf eines Hosts oder eines Diensts ReloadTrackingProfiles für eine Workflowinstanz als Ergebnis eines expliziten Aufrufs aktualisiert oder entfernt wurde. Mit diesem Prozess kann ein Host oder Dienst das Tracking-Profil dynamisch ändern, das für eine bestimmte Workflowinstanz verwendet wird.
Hinweise für Ausführende
Wenn Sie von TrackingServiceerben, müssen Sie die folgenden Member überschreiben: GetProfile(Guid)
Konstruktoren
| Name | Beschreibung |
|---|---|
| TrackingService() |
Veraltet.
Wenn sie in einer abgeleiteten Klasse implementiert wird, initialisiert sie eine neue Instanz der TrackingService Klasse. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Runtime |
Veraltet.
Ruft den WorkflowRuntime für diesen Dienst ab. (Geerbt von WorkflowRuntimeService) |
| State |
Veraltet.
Ruft den Zustand der WorkflowRuntimeService. (Geerbt von WorkflowRuntimeService) |
Methoden
| Name | Beschreibung |
|---|---|
| Equals(Object) |
Veraltet.
Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht. (Geerbt von Object) |
| GetHashCode() |
Veraltet.
Dient als Standardhashfunktion. (Geerbt von Object) |
| GetProfile(Guid) |
Veraltet.
Muss in der abgeleiteten Klasse überschrieben werden, und wenn diese implementiert wird, wird das Nachverfolgungsprofil für die angegebene Workflowinstanz zurückgegeben. |
| GetProfile(Type, Version) |
Veraltet.
Muss in der abgeleiteten Klasse überschrieben werden, und wenn sie implementiert wird, wird das Nachverfolgungsprofil zurückgegeben, das nach Version für den angegebenen Workflow Typequalifiziert ist. |
| GetTrackingChannel(TrackingParameters) |
Veraltet.
Muss in der abgeleiteten Klasse überschrieben werden, und wenn sie implementiert wird, wird der Kanal zurückgegeben, den die Laufzeitverfolgungsinfrastruktur zum Senden von Tracking-Datensätzen an den Tracking-Dienst verwendet. |
| GetType() |
Veraltet.
Ruft die Type der aktuellen Instanz ab. (Geerbt von Object) |
| MemberwiseClone() |
Veraltet.
Erstellt eine flache Kopie der aktuellen Object. (Geerbt von Object) |
| OnStarted() |
Veraltet.
Wenn sie in einer abgeleiteten Klasse überschrieben wird, stellt die Methode dar, die aufgerufen wird, wenn das Workflowlaufzeitmodul das Started Ereignis auslöst. (Geerbt von WorkflowRuntimeService) |
| OnStopped() |
Veraltet.
Wenn sie in einer abgeleiteten Klasse überschrieben wird, stellt die Methode dar, die aufgerufen wird, wenn das Workflowlaufzeitmodul das Stopped Ereignis auslöst. (Geerbt von WorkflowRuntimeService) |
| RaiseServicesExceptionNotHandledEvent(Exception, Guid) |
Veraltet.
Löst das ServicesExceptionNotHandled-Ereignis aus. (Geerbt von WorkflowRuntimeService) |
| Start() |
Veraltet.
Wenn sie in einer abgeleiteten Klasse überschrieben wird, wird der Dienst gestartet und in .StateStarting (Geerbt von WorkflowRuntimeService) |
| Stop() |
Veraltet.
Wenn sie in einer abgeleiteten Klasse überschrieben wird, stoppt der Dienst und ändert dies 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 wenn dies implementiert ist, ruft das Nachverfolgungsprofil für den angegebenen Workflowtyp ab, wenn eins verfügbar ist. |
| TryReloadProfile(Type, Guid, TrackingProfile) |
Veraltet.
Muss in der abgeleiteten Klasse außer Kraft gesetzt werden und bei der Implementierung wird ein neues Nachverfolgungsprofil für die angegebene Workflowinstanz abgerufen, wenn sich das Nachverfolgungsprofil seit dem letzten Laden geändert hat. |