在VS中开发工作流:总结
原文地址:
http://blogs.msdn.com/sharepoint/archive/2006/12/01/developing-workflows-in-vs-part-7-summary-and-final-thoughts.aspx你可能有一些被吓到了,有这么多的内容要想到和理解。但是不要担心,就像我前面说的,在你的脑袋周围只有一小部分的关键事情,一旦你能明白他们是如何结合在一起的,工作流的世界将会在你眼前打开。(或者至少会眼前一亮)关键部分如下:
1、 理解模板,关联和实例之家的不同点,文档中已经讲过很多了,实例从关联中来,关联从workflow.xml中定义的模板而来。
2、 高层次的设计不是工作流,而是在他周围相关的列表和列表项,可能需要做更多
3、 工作流只能响应那些通过工作流服务注册的事件。如果你想要注册你的工作流的项,必须使用SharePoint活动(也就是工作流服务API)来创建这些项。
4、 绑定数据到表单是工作流开发中最容易搞混的一个部分,切记:
a) 你的表单页面调用对象模型的激活工作流函数,必须要通过工作流服务。每一个函数调用一个host,获取你的表单数据并且传递数据到相应的工作流事件接受活动。
b) 表单可以是aspx页面或者InfoPath表单(宿主机中的aspx页面)。但是InfoPath提供了很多好处,例如客户端集成,容易设计,无代码。
c) 如果你使用InfoPath表单,使用你的控件的名字关联工作流内部的值(也就是说,在表单中使用和工作流相同的架构)
d) 在提交之前检查InfoPath表单
e) 工作流对象产生的任务是不同的,数据以怎么的形式保存(是直接存入任务列表,而不是存入工作流),工作流如何接收数据(是一个SPWorkflowTaskProperties对象,而不是一个字符串string),在workflow.xml文件中如何定义(一个内容类型,而不是一个页面)。
5、 当你准备部署一个工作流的时候,填写feature.xml和workflow.xml文件,然后使用staadm命令安装工作流(在VS的模板中,他会自动帮你做这些事)
6、 通过附加服务器的进程来调试工作流,使用断点和ULS日志来发现工作流的错误所在。
在ECM Starter Kit的例子中使用上面的原则,建立概念。从HelloWorld开始理解InfoPath表单和相关的基础,然后开始交互。开发一些小的练习程序,每次熟悉一点。
不无如何,感谢阅读。我希望这些都很有帮助,在附件中是全部的系列。