问题标签 [workflow-foundation-4]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
768 浏览

multithreading - 单线程单元中的工作流 4.0?

我现在正在努力研究 WF 4.0,但我很难弄清楚如何在 STA 线程中运行工作流。我需要在工作流中构建 XPS 文档,这意味着我需要创建 UI 元素 (FixedPage),这意味着运行工作流的线程必须是 STA。

在 3.0 中,您可以使用 ManualWorkflowSchedulerService 做一些魔术(我没有管理这部分代码,所以这里没有详细信息)以使工作流在 STA 线程中运行。但现在 4.0 大不一样了;甚至 beta 2 也与 beta 1 不同...

有人知道如何让 4.0 工作流在 STA 线程中运行吗?


我不能使用 WorkflowInvoker 因为它只适用于不需要持久性的短期工作流,我这样做了。

0 投票
2 回答
1694 浏览

c# - 创建 SynchronizationContext 时的异常做法?

我正在创建用于 Windows Workflow 4.0的 STA 版本的SynchronizationContext 。我想知道在发布回调时如何处理异常。

SynchronizationContext可用于发送(同步执行)或发布(异步执行)类型为SendOrPostCallback的委托。尽管在这两种情况下我都在 STA 线程上调用委托,但很容易知道如何在同步执行时处理异常。我阻塞调用线程,在我的工作线程上调用回调,记录任何异常,解除阻塞调用线程,并在调用线程上抛出任何记录的异常。

我应该在异步Post上做什么不太清楚。没有将异常从执行线程传回调用线程的机制;发布是 100% 火,然后忘记。SendOrPostCallback中 没有EndInvoke()WaitHandle。抛出的任何异常都将导致应用程序被拆除。

我是否别无选择,只能让Post中引发的异常破坏我的应用程序?这似乎是框架中SynchronizationContexts中的默认行为(谢谢,Reflector)。我似乎无法弄清楚这是为什么。难道不应该有一些方法来防止异步Post繁荣吗?

0 投票
1 回答
372 浏览

workflow-foundation - 我在哪里可以获得/需要帮助来创建内存中的 InstanceStore

我最近在新的 Workflow 4.0 上做了很多工作。使测试应用程序更容易组合在一起的一件事是内存中的InstanceStore。一种将卸载的工作流暂时保存在内存中的一种。

关于如何创建商店的文档非常贫乏,其界面非常复杂且晦涩难懂。我没有花一天时间弄清楚它,而是想知道是否有人知道如何实现 InstanceStore 的一个很好的解释,或者只是一些代码可以满足我的需求。

0 投票
3 回答
532 浏览

c# - 工作流程的外观(.net WF4、beta2)

我可以将顺序工作流程的标准外观更改回 wf 3.5 外观吗?我错过了 DragOver 上的自动扩展元素之间的箭头。

如果这是不可能的,我可以将我的活动的 xaml 更改为类似于 .net 3.5 wf 可见性吗?

谢谢!

0 投票
1 回答
1105 浏览

c# - wf 4.0 中的活动数据绑定

我想在组合框中显示一些数据类型。数据类型包装在以下类中:

目前我有一个绑定属性:

通过 WorkflowElement 中的 xaml 连接:

我的组合框中没有任何内容gType。我做错了什么?我是 WPF 和 Workflow 4.0 的新手,所以我认为这对你来说并不难。

谢谢你的建议,埃尔

0 投票
2 回答
2051 浏览

validation - Workflow Foundation 4.0 中设计时验证的模式是什么?

我不清楚何时以及如何在 WF 4.0 中的自定义活动/自定义活动工厂/自定义设计器中进行验证。

我的活动中唯一似乎提供验证错误支持的地方是在CacheMetadata方法中(我相信在设计过程中会多次调用它)。这是我应该进行验证的地方吗?ActivityDesigner 中是否支持验证?

0 投票
2 回答
598 浏览

workflow-foundation-4 - .NET 4.0 中长时间运行的工作流添加所需引用的问题

我正在尝试完成以下“操作方法”,以尝试了解持久性在 .NET 4.0 工作流中的工作原理。

MSDN - 如何:创建和运行长时间运行的工作流

不幸的是,文档中似乎有错误,或者我的设置有问题,因为我无法添加对以下组件的引用:

  • System.WorkflowServiceModel
  • System.WorkflowService

这些组件在“在工作流应用程序中启用持久性”部分的步骤 (1) 中指定。

我尝试研究这个问题,但没有发现任何非常有用的东西。似乎我不是唯一遇到问题的人:

Microsoft Connect - VS2010 缺少程序集 System.WorkflowServiceModel

这里的一位用户建议“问题在于使用了客户端配置文件”,但我不太明白这意味着什么。

我已将我的问题添加到该页面,如果 Microsoft 即将给出答案,我将在此处更新。

更新:

在克里斯的评论之后,我找到了一个更好的链接,我把它放在了评论中。我认为 Stack Overflow 上公认的方法是更新最初的问题?

MSDN - 配置 SQL 工作流实例存储

0 投票
2 回答
1624 浏览

workflow-foundation - Workflow 4.0 自定义活动以启动外部流程

我正在尝试 Workflow 4.0 并希望编写一个自定义活动来启动一个外部可执行文件,等待该过程完成,然后恢复工作流中的后续步骤。

我找到了以下示例,该示例显示(朝向页面底部)如何编写活动以等待文件到达特定目录:

使用 Workflow 4.0 创建自定义活动

我对这个例子有几个问题。首先,当我添加以下代码时:

instance.Resumebookmark(...)似乎不可用,但是instance.BeginResumeBookmark并且instance.EndResumeBookmark是。

我也不确定如何改变它来处理外部进程,而不仅仅是查看目录的内容。

这甚至是这种事情的最佳方法吗?

0 投票
1 回答
1750 浏览

windows - Windows Workflow Foundation 4.0 和持久性

在即将发布的 Visual Studio 2010 之前,我正在使用 Visual Studio 2010 Beta 2 来学习使用 Workflow Foundation (WF) 4.0 版。我注意到的一件事是,如果我在 SQL 数据库持久性存储中保留一个工作流,然后稍后将其加载回应用程序并完成工作流,当工作流的最后一个活动完成时,记录将从持久存储中删除。我需要确定这个功能是否是为了防止数据库变得庞大而设计的,或者我做错了什么。

0 投票
1 回答
1882 浏览

windows - Windows Workflow Foundation 4.0 和持久性

我正在使用 Visual Studio 2010 的 Beta 2 版本来抢先学习使用 WF4,但遇到了持久性问题。在下面的代码中,如果我使用注释掉的 WorkflowApplication 对象的创建,持久性可以正常工作。如果我使用下面未注释的创建,我将字典传递给我想要传递的参数,那么持久性就会中断。任何想法为什么会这样,以及如何解决它?