我正在尝试使用 Visual Studio 2012 在 SharePoint 2013 上实现一些工作流以用于学习目的。我现在正在处理的工作流程非常简单,它应该将一个列表项复制到另一个列表,但是在获取另一个 ListId 时出现异常。
所以事情是这样的,
- 首先,我使用GetCurrentListId活动获取当前列表 guid ,并将其保存到 System.Guid 类型的变量中。
- 之后,我使用GetCurrentItemGuid活动获取当前项目 guid ,并将其保存到另一个 System.Guid 类型的变量
最后,我使用了CopyItem Activity,这个 Activity 需要三个参数:ListId、ItemGuid和ToListId。由于我没有找到任何获得 ListId 的活动,因此我在ToListId组合框中选择了我想要的列表,并将其写入表达式编辑器:
System.Guid.Parse("{$ListId:List2;}")
很简单,对吧?但是当我运行工作流时,我得到了这个异常:
Dispatcher 遇到意外异常:System.Runtime.CallbackException:对 WorkflowInstance 'b1eb965e-d6e4-47d3-9170-ae2677897947' 上的 OnRequestAbort 的调用引发了异常。这被认为是致命的。有关详细信息,请参阅内部异常。---> System.AggregateException:如果通知持久空闲,则应进行处理。---> System.AggregateException:发生一个或多个错误。---> System.FormatException:索引(从零开始)必须大于或等于零且小于参数列表的大小。
我不知道它为什么会抛出该异常,并且我还没有找到任何其他方法来获取不是工作流上下文的 CurrentList 的列表的 GUID。
请有点帮助....