2011-10-11 53 views
0

我能够将linq2sql对象加载到我的工作流服务实例中,并且能够从这些对象中访问没有问题的值。但是,我注意到,我创建的加载这些对象的工作流程活动在接收时被意外调用,并且我的工作流程无法正常运行。在工作流实例中存储linq2sql对象有什么影响

我怀疑是可序列化问题。当我消除对象的存储时,只是从对象中存储了一些选定的“值”(简单类型 - 布尔型,整数型),额外的调用消失了,工作流程开始正常运行。

所以 - 关于为什么我可能看到这些问题的任何想法?有没有人真的知道它是序列化相关还是注释?

想法?

回答

1

我相信L2S默认使用事件进行变更跟踪,因此工作流中使用的实体实际上包含了返回到L2S上下文对象的引用。在序列化时,它会尝试序列化所有这些,然后重新加载它,这是行不通的。最好的做法是使用简单的DTO对象,这些对象可以作为工作流状态的一部分安全地序列化和反序列化。

+0

谢谢。那是我怀疑的答案。 –

相关问题