WorkflowApplicationUnhandledExceptionEventArgs.ExceptionSourceInstanceId Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá jedinečný identifikátor instance aktivity, který je zdrojem neošetřené výjimky.
public:
property System::String ^ ExceptionSourceInstanceId { System::String ^ get(); };
public string ExceptionSourceInstanceId { get; }
member this.ExceptionSourceInstanceId : string
Public ReadOnly Property ExceptionSourceInstanceId As String
Hodnota vlastnosti
Identifikátor instance aktivity, který je zdrojem neošetřené výjimky.
Příklady
Následující příklad vyvolá pracovní postup, který vyvolá výjimku. Výjimka je neošetřena pracovním postupem a obslužná rutina OnUnhandledException je vyvolána. Zkontrolují WorkflowApplicationUnhandledExceptionEventArgs se, aby poskytly informace o výjimce, a pracovní postup se ukončí.
Activity wf = new Sequence
{
Activities =
{
new WriteLine
{
Text = "Starting the workflow."
},
new Throw
{
Exception = new InArgument<Exception>((env) =>
new ApplicationException("Something unexpected happened."))
},
new WriteLine
{
Text = "Ending the workflow."
}
}
};
WorkflowApplication wfApp = new WorkflowApplication(wf);
wfApp.OnUnhandledException = delegate(WorkflowApplicationUnhandledExceptionEventArgs e)
{
// Display the unhandled exception.
Console.WriteLine("OnUnhandledException in Workflow {0}\n{1}",
e.InstanceId, e.UnhandledException.Message);
Console.WriteLine("ExceptionSource: {0} - {1}",
e.ExceptionSource.DisplayName, e.ExceptionSourceInstanceId);
// Instruct the runtime to terminate the workflow.
return UnhandledExceptionAction.Terminate;
// Other choices are UnhandledExceptionAction.Abort and
// UnhandledExceptionAction.Cancel
};
wfApp.Run();
Poznámky
Pokud aktivita vyvolá výjimku a je neošetřená, výchozím chováním je ukončení instance pracovního postupu. Pokud je k dispozici obslužná OnUnhandledException rutina, může toto výchozí chování přepsat. Tato obslužná rutina dává autorovi hostitele pracovního postupu příležitost poskytnout odpovídající zpracování, jako je vlastní protokolování, přerušení pracovního postupu, zrušení pracovního postupu nebo ukončení pracovního postupu.