0

我正在使用 Visual Studio 2010 Beta 2 来抢先学习使用 WF4。我正在设计器中创建一个 xaml 文件。我添加了一个 ForEach 活动,并且在该 ForEach 活动内部有一个流程图,可以进行一些条件处理。如果其中一个条件为真,我希望能够摆脱 ForEach,但不知道该怎么做。在文件后面的 C# 代码中,它只是发出中断;,但在 xaml 工作流设计器中,我看不到任何打破循环的机制。有什么建议么?

4

2 回答 2

4

WF4 中没有等效的中断。因此,您要么需要开始添加条件逻辑以跳过下一个循环,要么抛出异常并在 ForEach 之外捕获并继续。

而且我同意这两者都不是一个很好的选择:-(

于 2010-01-11T10:39:49.877 回答
0

使用 While 或 DoWhile 活动代替 ForEach 可能是活动对迭代控制的限制的最佳选择。它有点难看,但就像你想要迭代一样工作。

条件可以检查一个布尔值,例如Broken,和一个计数器变量以将其与集合长度进行比较。我不确定这是否最适合您的场景或您的循环集合,但似乎是一个可行的选择。

于 2010-06-23T19:09:38.133 回答