C# 使用WF4构建;工作队列“;和用户分配?与SP2010类似
[我理解这有点主观-但必须有人具备处理此类需求的书写系统知识。注意:我们使用C#、.Net4和SP2010] 我一直在评估SharePoint2010和WF4的定制业务应用程序,包括工作流,它们也需要后端系统交互 (也可以选择既不使用SP2010也不使用WF4,只需将状态更改写入DB并直接写入windows服务即可完成任何自动阶段。) SP2010被证明是一个非常陡峭的学习曲线,对于大多数需求来说,它的功能都受到限制……然而,对于工作流部分,尤其是它擅长的“列表和任务”,实现一个新的列表以及随之而来的安全性是一个额外的好处 那么,有没有一种方法可以在WF4中模拟这些功能呢 主意 MVC3应用程序,用户的广告组决定他们可以执行哪些“队列”和功能。C# 使用WF4构建;工作队列“;和用户分配?与SP2010类似,c#,workflow,workflow-foundation-4,sharepoint-workflow,C#,Workflow,Workflow Foundation 4,Sharepoint Workflow,[我理解这有点主观-但必须有人具备处理此类需求的书写系统知识。注意:我们使用C#、.Net4和SP2010] 我一直在评估SharePoint2010和WF4的定制业务应用程序,包括工作流,它们也需要后端系统交互 (也可以选择既不使用SP2010也不使用WF4,只需将状态更改写入DB并直接写入windows服务即可完成任何自动阶段。) SP2010被证明是一个非常陡峭的学习曲线,对于大多数需求来说,它的功能都受到限制……然而,对于工作流部分,尤其是它擅长的“列表和任务”,实现一个新的列表以及随之
用户可以查看自己的请求和状态等 WF4服务承载工作流,其中一些步骤是自动的 例1 用户NormalPerson(NP)打开站点,单击“创建新请求” 表单允许他们从后端系统中查找数据(数千行,SP2010很难做到这一点,特别是因为它需要多次搜索和筛选/排序-然而,jQuery+DataTables+Ajax使这一点变得简单) NP保存请求 WF4“获取”请求,设置为“需要批准”,向后台(BO)组发送电子邮件,并持续发送到DB(通过BLL交互) BO用户可以打开站点并查看“新请求”列表,打开一个并批准它 WF4“获取”字段中的更改,向NP和案例管理组发送电子邮件,并持续发送到DB CM用户打开“等待操作”列表并执行操作(同时更新后端系统),设置为完成 WF4“获取”更改并向NP发送确认,存档请求 例2 NP创建新请求 WF4发送电子邮件,设置“需要批准” BO用户在列表中找到新请求,打开但拒绝 WF4向NP发送带有请求链接的电子邮件 NP打开链接,修改请求,保存 WF4向Bo集团发送“更新”电子邮件,并标记为重新提交 BO用户打开“重新提交”列表,选择项目并设置为“需求经理批准” WF4发送经理电子邮件 经理看到列表中的项目,打开并批准 WF4向CM组发送电子邮件…..如前所述继续 例3 NP保存新请求 WF4收到请求后,会直接通过适当的电子邮件发送给“CM”,这是不受限制的 CM用户拿起……像以前一样继续 例4 NP保存新请求 WF4收到请求,它不需要任何手动干预,因此会更新后端系统(BLL/WCF调用等),并使用电子邮件等将其设置为“已完成” CM用户拿起……像以前一样继续 例5 NP保存新请求 WF4获取请求、发送电子邮件并以“需要批准”的形式离开 NP打开请求并在任何人处理它之前取消它
WF4获取更改并将项目移动到“已取消”。您考虑过使用开源工作流引擎吗?以下是一份清单: 我对Sharepoint的体验非常糟糕。我对WF4一无所知。有这么多,因为它们是开源的,如果需要扩展框架,您可以自定义它
另一种可能性是使用JIRA。虽然官方不是工作流工具,但它具有卓越的工作流功能。只需将每个请求视为不同类型的任务。根据您给出的示例,我认为您可以使用WF4解决此问题。WF4提供了出色的事务控制和流控制功能:
- 对于NP启动的每个新请求,都会创建一个新的工作流实例
- 每个步骤(NP提交请求、BO批准请求等)都包含在一个事务范围内,从而确保该步骤中涉及的数据保存到DB中,与后续步骤的结果无关李>
- 在每一步之后,工作流都会被持久化到数据库中(请注意您在WF中使用的会话数据)
- 启动新步骤时,将从数据库中引发相同的工作流实例,从而使流程唯一
- 发送电子邮件通知只不过是封装SMTP服务器使用的一种活动(C#为此内置了对象和方法)
希望这能有所帮助。我分享您迄今为止的SharePoint体验……但我真的需要一个C#引擎,并努力寻找一个免费、良好且支持良好的引擎!祝你好运我还没见过这种情况