次の方法で共有


TrackingService.TryReloadProfile(Type, Guid, TrackingProfile) メソッド

定義

派生クラス内でオーバーライドされる必要があります。実装されると、最後の読み込み以降に追跡プロファイルが変化した場合、特定のワークフロー インスタンスの新しい追跡プロファイルを取得します。

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

パラメーター

workflowType
Type

ワークフロー インスタンスの Type

workflowInstanceId
Guid

ワークフロー インスタンスの Guid

profile
TrackingProfile

このメソッドから制御が戻るときに、読み込む TrackingProfile を格納します。 このパラメーターは初期化せずに渡されます。

戻り値

Boolean

新しい TrackingProfile を読み込む必要がある場合は true。それ以外の場合は falsetrue の場合、TrackingProfileprofile で返されます。

TryReloadProfile メソッドの基本実装の例を次に示します。 この例は、終了追跡サービスの SDK サンプルです。 詳細については、「 終了追跡サービスのサンプル」を参照してください。

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

注釈

TryReloadProfile は、指定したワークフロー インスタンスの新しい TrackingProfile を読み込むべきかどうか判別するためにランタイム追跡インフラストラクチャによって呼び出されます。 新しい TrackingProfile が必要な場合、profile で返されます。 ランタイム追跡インフラストラクチャにワークフロー インスタンスの追跡を停止させるには、追跡サービスが true を返し、profile を null 参照 (Visual Basic では Nothing) に設定する必要があります。 追跡プロファイルを再読み込みする必要があるかどうかを判別するために、追跡サービスは workflowType または workflowInstanceId を任意の方法で使用できます。 たとえば、SqlTrackingService は、追跡プロファイルを再読み込みする必要があるかどうかを判別するために workflowInstanceId のみを使用します。 ランタイム追跡インフラストラクチャ独自の追跡セマンティクスに応じて、またはワークフロー インスタンスに対するホストまたはサービスによる TryReloadProfile 呼び出しの応答として、WorkflowInstance.ReloadTrackingProfiles がランタイム追跡インフラストラクチャによって呼び出されます。

適用対象