若要导入在 SharePoint Designer 中创建的可重用工作流,请使用 Visual Studio 中的“导入可重用 SharePoint 2010 工作流”项目模板。 此模板导入 声明性工作流 (仅限 XML),并将其转换为 代码工作流,这是可以使用 Visual Basic 或 Visual C# 代码增强的工作流。 有关详细信息,请参阅 演练:将 SharePoint Designer 可重用工作流导入 Visual Studio。
但是,导入可重用 SharePoint 2010 工作流模板只能导入农场解决方案。 如果要将工作流部署为沙盒解决方案,请使用“导入 SharePoint 2010 解决方案包”模板将其导入。 但是,通过执行此作,无法将其转换为代码工作流,并且无法对其进行修改。
使用“导入可重用工作流”模板导入可重用工作流
如果使用“导入可重用 SharePoint 2010 工作流”模板导入可重用工作流,则可以像任何其他 Visual Studio SharePoint 解决方案一样运行或更改该解决方案,但可能需要手动修复某些项。
导入任务表单
导入可重用 SharePoint 2010 工作流项目模板导入所有初始表单和关联表单,但仅导入一个任务表单,因为代码工作流架构仅允许一个任务表单。 原始工作流解决方案中的其他任何任务表单将放入解决方案资源管理器中的其他导入文件文件夹中。
使用导入 SharePoint 2010 解决方案包模板导入可重用工作流
如果使用导入 SharePoint 2010 解决方案包模板导入可重用工作流,则需要考虑以下问题:
导入工作流后,可以通过选择 F5 键立即在 Visual Studio 中部署并运行它。 但是,如果更改导入解决方案中的工作流中的任何内容,则可能需要手动修复项目中的元素,然后才能部署和运行工作流。
由于工作流是声明性的,因此无法将代码添加到其中。 若要将工作流转换为代码工作流,必须使用“导入可重用 SharePoint 2010 工作流”模板将其导入 Visual Studio。
虽然可以在“设计视图”中编辑工作流设计器(.xoml)文件,但我们建议在“源视图”中进行编辑,因为工作流设计器可能会显示误报错误。
工作流中的调试不适用于声明性内容。 工作流设计器中设置的断点不会命中。
导入全局可重用的工作流解决方案
无法使用“导入可重用 SharePoint 2010 工作流”模板导入全局可重用工作流。 若要导入全局可重用工作流,必须将其转换为非全局可重用工作流,或者必须使用导入 SharePoint 2010 解决方案包模板。
若要转换工作流,请在 SharePoint Designer 中创建全局可重用工作流的副本(方法是打开工作流的快捷菜单,然后选择“ 另存为复制”)。 然后使用 Visual Studio 中的“导入可重用 SharePoint 2010 工作流”模板导入新的可重用工作流。
若要在不修改的情况下导入全局可重用工作流,请使用“导入 SharePoint 2010 解决方案包”模板。 如果使用此方法,则工作流不会转换为代码工作流,并且保持声明性工作流。