TrackingService.TryReloadProfile(Type, Guid, TrackingProfile) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Deve essere sottoposto a override nella classe derivata e, in caso di implementazione, recupera un profilo di rilevamento nuovo per l'istanza del flusso di lavoro specificata, se il profilo di rilevamento è stato modificato dall'ultimo caricamento.
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
Parametri
- profile
- TrackingProfile
Quando termina, questo metodo contiene l'elemento TrackingProfile da caricare. Questo parametro viene passato non inizializzato.
Restituisce
true
se è necessario caricare un nuovo TrackingProfile; in caso contrario, false
. Se true
, l'elemento TrackingProfile verrà restituito in profile
.
Esempio
Nel codice seguente viene illustrata un'implementazione di base del metodo TryReloadProfile
. Questo esempio è tratto dall'esempio SDK Termination Tracking Service. Per altre informazioni, vedere Esempio di servizio di rilevamento della terminazione.
/// <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
Commenti
Il metodo TryReloadProfile viene chiamato dall'infrastruttura di controllo della fase di esecuzione per determinare se è necessario caricare un nuovo oggetto TrackingProfile per l'istanza del flusso di lavoro specificata. Se è necessario un nuovo TrackingProfile esso viene restituito in profile
. Se si desidera che l'infrastruttura di controllo della fase di esecuzione interrompa il rilevamento di un'istanza del flusso di lavoro, il servizio di rilevamento deve restituire true
e impostare profile
su un riferimento null (Nothing
in Visual Basic). Il servizio di rilevamento può utilizzare workflowType
o workflowInstanceId
nel modo desiderato per determinare se un profilo di rilevamento deve essere ricaricato. Ad esempio, l'oggetto SqlTrackingService utilizza solo workflowInstanceId
per decidere se il profilo di rilevamento deve essere ricaricato. Il metodo TryReloadProfile viene chiamato dall'infrastruttura di controllo della fase di esecuzione in base alla relativa semantica di rilevamento oppure in risposta all'host o a un servizio che chiama WorkflowInstance.ReloadTrackingProfiles in un'istanza del flusso di lavoro.