Freigeben über


TrackingService.TryReloadProfile(Type, Guid, TrackingProfile) Methode

Definition

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.

protected public:
 abstract bool TryReloadProfile(Type ^ workflowType, Guid workflowInstanceId, [Runtime::InteropServices::Out] System::Workflow::Runtime::Tracking::TrackingProfile ^ % profile);
protected internal abstract bool TryReloadProfile (Type workflowType, Guid workflowInstanceId, out System.Workflow.Runtime.Tracking.TrackingProfile profile);
abstract member TryReloadProfile : Type * Guid * TrackingProfile -> bool
Protected Friend MustOverride Function TryReloadProfile (workflowType As Type, workflowInstanceId As Guid, ByRef profile As TrackingProfile) As Boolean

Parameter

workflowType
Type

Type der Workflowinstanz.

workflowInstanceId
Guid

Guid der Workflowinstanz.

profile
TrackingProfile

Diese Methode gibt das zu ladende TrackingProfile zurück. Dieser Parameter wird nicht initialisiert übergeben.

Gibt zurück

true, wenn ein neues TrackingProfile geladen werden soll, andernfalls false. Wenn true, wird das TrackingProfile in profile zurückgegeben.

Beispiele

Im folgenden Beispiel wird eine grundlegende Implementierung der TryReloadProfile-Methode veranschaulicht. Dieses Beispiel stammt aus dem Termination Tracking Service SDK-Beispiel. Weitere Informationen finden Sie unter Beispiel für den Terminierungsnachverfolgungsdienst.

/// <summary>
/// Always returns false; this tracking service has no need to reload its tracking profile for a running instance.
/// </summary>
/// <param name="workflowType"></param>
/// <param name="workflowInstanceId"></param>
/// <param name="profile"></param>
/// <returns></returns>
protected override bool TryReloadProfile(Type workflowType, Guid workflowInstanceId, out TrackingProfile profile)
{
    //
    // There is no reason for this service to ever reload a profile
    profile = null;
    return false;
}
' Always returns false me tracking service has no need to reload its tracking profile for a running instance.
' <param name="workflowType"></param>
' <param name="workflowInstanceId"></param>
' <param name="profile"></param>
' <returns></returns>
Protected Overrides Function TryReloadProfile(ByVal workflowType As Type, ByVal workflowInstanceId As Guid, ByRef profile As TrackingProfile) As Boolean
    '
    ' There is no reason for me service to ever reload a profile
    profile = Nothing
    Return False
End Function

Hinweise

TryReloadProfile wird von der Laufzeitverfolgungsinfrastruktur aufgerufen, um zu bestimmen, ob ein neues TrackingProfile für die angegebene Workflowinstanz geladen werden soll. Wenn ein neues TrackingProfile erforderlich ist, wird es in profile zurückgegeben. Wenn die Laufzeitverfolgungsinfrastruktur eine Workflowinstanz nicht mehr verfolgen soll, sollte der Überwachungsdienst true zurückgeben und profile auf einen NULL-Verweis (Nothing in Visual Basic) festlegen. Der Überwachungsdienst kann workflowType oder workflowInstanceId beliebig verwenden, um zu bestimmen, ob ein Verfolgungsprofil neu geladen werden soll. Beispielsweise verwendet SqlTrackingService nur workflowInstanceId, um zu bestimmen, ob ein Verfolgungsprofil neu geladen werden soll. TryReloadProfile wird von der Laufzeitverfolgungsstruktur nach einer eigenen Verfolgungssemantik aufgerufen oder als Antwort auf einen Host oder Dienst, der WorkflowInstance.ReloadTrackingProfiles für eine Workflowinstanz aufruft.

Gilt für: