Udostępnij za pośrednictwem


TrackingService.TryReloadProfile(Type, Guid, TrackingProfile) Metoda

Definicja

Należy zastąpić klasę pochodną, a po zaimplementowaniu pobiera nowy profil śledzenia dla określonego wystąpienia przepływu pracy, jeśli profil śledzenia uległ zmianie od czasu ostatniego załadowania.

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

Parametry

workflowType
Type

Wystąpienie Type przepływu pracy.

workflowInstanceId
Guid

Wystąpienie Guid przepływu pracy.

profile
TrackingProfile

Gdy ta metoda zwróci wartość , element zawiera element do załadowania TrackingProfile . Ten parametr jest przekazywany jako niezainicjowany.

Zwraca

Boolean

truejeśli ma zostać załadowany nowyTrackingProfile; w przeciwnym razie . false Jeśli trueparametr jest zwracany w elemecie TrackingProfile profile.

Przykłady

W poniższym przykładzie przedstawiono podstawową implementację TryReloadProfile metody . Ten przykład pochodzi z przykładowego zestawu SDK usługi Termination Tracking Service. Aby uzyskać więcej informacji, zobacz Przykład usługi śledzenia zakończenia.

/// <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

Uwagi

TryReloadProfile Jest wywoływana przez infrastrukturę śledzenia w czasie wykonywania w celu określenia, czy dla określonego wystąpienia przepływu pracy ma zostać załadowany nowy TrackingProfile . Jeśli nowy TrackingProfile jest wymagany, jest zwracany w pliku profile. Jeśli chcesz, aby infrastruktura śledzenia czasu wykonywania przestała śledzić wystąpienie przepływu pracy, usługa śledzenia powinna zwracać true i ustawiać profile wartość równą odwołaniu o wartości null (Nothingw Visual Basic). Usługa śledzenia może korzystać workflowType z usługi śledzenia lub workflowInstanceId w dowolny sposób, aby określić, czy profil śledzenia powinien zostać ponownie załadowany. Na przykład jedyną wartością SqlTrackingService używaną workflowInstanceId do decydowania, czy profil śledzenia powinien zostać ponownie załadowany. TryReloadProfile jest wywoływana przez infrastrukturę śledzenia czasu wykonywania zgodnie z własną semantyka śledzenia lub w odpowiedzi na hosta lub usługę wywołującą WorkflowInstance.ReloadTrackingProfiles w wystąpieniu przepływu pracy.

Dotyczy