“引发”示例

Download sample

异常提供了一种结构化的、统一的和类型安全的方式来处理工作流、范围和用户级别的错误情形。 Windows Workflow Foundation 中的异常机制类似于 C#。 它使开发人员能够引发异常、按类型捕获异常,以及将异常赋给变量。

此示例演示工作流如何能够建立异常模型和引发异常,以及宿主应用程序如何处理这种异常。 示例使用 ThrowActivity 活动来引发 Exception。 由于工作流中未定义异常处理程序,因此异常将退出工作流,并且工作流将终止。 由于工作流是异步执行的,因此将通过 WorkflowTerminated 事件中的 WorkflowTerminatedEventArgs 将异常信息发送到宿主应用程序。

在使用 ThrowActivity 活动时,可以选择指定要引发的异常的类型并将该类型分配给 FaultType 属性,或者通过实例化异常对象并将该实例分配给 Fault 属性。 当您使用 FaultType 属性时,ThrowActivity 活动将在其引发异常时创建该异常类型的实例。 在想要引发一般异常或在利用完全声明性创作方案时,您将使用此方法。 为了提供额外并更具体的异常信息,请创建异常对象的实例,并将其分配给 ThrowActivity 活动的 Fault 属性。 此示例演示如何利用此方法。

提示

在效率上,使用 ThrowActivity 活动与从代码处理程序或活动中的执行代码中引发异常不相上下;但是,通过使用 ThrowActivity 活动,工作流创作者将能够显式建立工作流中所引发异常的模型。

生成示例

  1. 通过单击本主题中的**“下载示例”**来下载该示例。

    这会将示例项目提取到本地硬盘。

  2. 单击**“开始”,依次指向“程序”“Microsoft Windows SDK”,然后单击“CMD 外壳”[CMD Shell]**。

  3. 转到示例的源目录。

  4. 在命令提示符处键入 MSBUILD <解决方案文件名>

运行示例

  • 在 SDK 命令提示窗口中,运行 Throw\bin\debug 文件夹(对于该示例的 VB 版本为 Throw\bin 文件夹)中的 .exe 文件,该文件夹位于该示例的主文件夹下。

请参见

参考

ThrowActivity

其他资源

Using the ThrowActivity Activity
“嵌套异常处理程序”示例
Fault Handling in Workflows
“活动”示例

Footer image

版权所有 (C) 2007 Microsoft Corporation。保留所有权利。