1

我在 SharePoint 中托管了一个状态机工作流,其中一个状态有延迟活动。当计时器触发延迟活动时,我收到一个序列化错误:“Engine RunWorkflow:System.Runtime.Serialization.SerializationException:无法获取成员'SendEmail_MethodInvoking'”。

此错误引用的方法不在同一状态,并且在工作流正常调用它时可以正常工作。

有任何想法吗?

4

1 回答 1

1

重新启动“windows SharePoint 计时器服务”。根本原因是,只要您有延迟活动的工作流,该事件就会由服务(SPTimerV3)触发,在它触发之前,它必须从其 bin 或 GAC 加载程序集,只有一个文件(模块加载) 基于 workflow.xml 文件加载中指定的程序集信息。

在更改工作流活动后部署新的二进制文件,SPTimerV3 不知道新添加的二进制文件;除非您进行时间重置,否则它不会重新加载它。除非您进行重置,否则持久性(序列化或反序列化)或程序集的加载将由于类型不匹配而失败。

于 2009-11-03T11:40:10.410 回答