【问题标题】:make my own work flow or use microsoft work flow 4?制作我自己的工作流程还是使用微软工作流程 4?
【发布时间】:2016-07-09 06:51:36
【问题描述】:

我们公司有一个关于工作流程的新大项目。 (就像用户注册一个请求,那么 operator1 应该检查然后将请求发送给 operator2,然后向用户发送一条继续消息,然后用户完成他自己的第一个请求,然后它会继续 20 级直到完成。)

因为这些类型的工作流程在项目中很多,而且它们都可能在以后多次更改,所以我必须使用工作流程技术来更轻松地处理这种复杂情况。

我知道我可以通过 2 种方法来完成这项工作:

方式 1) 我可以使用 Microsoft Workflow 4 技术并将工作流项目添加到我的解决方案中,并在那里制作工作流及其版本控制和其他内容。

方式 2) 我可以制作自己的工作流程。为其创建一个图形用户界面并将活动存储在数据库中,然后进行版本控制,然后我的项目与我的工作流程一起工作。

现在我的问题是:

让我自己的工作流程对我来说听起来更容易(尽管我必须从头开始制作每件事,包括 GUI 和背后的编码、版本控制和其他东西),因为我可以更轻松地控制它。 但使用 Microsoft wf4 我不知道。我已经红了两个星期了,但我不太了解它。我知道如何制作服装 Activity 和书签之类的东西,但我认为使用它会是一种负担,因为我认为最后我必须自己做每一件事,并将书签和用户进度级别存储在我自己的 db 中。

告诉我这些家伙:制作自己的工作流程系统好吗?我可以做微软 wf4 所做的一切吗?建议任何事情。我只需要建议。非常感谢。

【问题讨论】:

    标签: c# workflow-foundation-4


    【解决方案1】:

    WF4 有点难学。 我已经使用它并教了它多年,我发现最好的方法是将它用作外部课程的路由器。 然后你可以利用它的优势:长期持久性、版本控制(如果您加载 xaml 外部文件/数据库则很容易)和设计 GUI。

    为什么要重新发明已经有效的东西。

    【讨论】:

    • 当我们必须自己保存数据库中的所有东西(比如保存当前书签和其他东西)时,使用 wf4 的原因是什么?只是图形用户界面?如果我们想自己制作,版本控制非常简单。对于长期运行的任务,当我们使用“状态”字段将数据存储在数据库中时,我们可以继续我们的进度(任何时间)。我们不能吗?
    • 我不确定您为什么要将书签存储在数据库中?持久化的工作流从中断处重新开始,不需要书签。
    • 那么书签存储在哪里?想象一下 IIS 重新启动或服务器被关闭。之后 wf4 如何知道它应该从哪里继续工作流程?
    • 您在这种情况下使用 Persist,而不是 Bookmarks。当你 Persist 时,当前执行点的位置被存储。稍后,在 IIS 重新启动或电源故障之后,当您重新加载工作流时,工作流将在它被持久化的点开始执行。我将持久化点放在执行数据更改操作的活动之前和之后,以便 Persist 是一个伪事务操作。这会阻止数据更改发生两次。持久化是让你保存整个工作流状态书签是让你在一个活动中返回代码
    • 你在哪里保存你的 Persist?在数据库中?
    猜你喜欢
    • 1970-01-01
    • 2011-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-24
    相关资源
    最近更新 更多