在工作流持久化中序列化 POCO EF 对象
我正在尝试保留其中包含 EF POCO 作为变量的工作流程。当我尝试坚持(并且工作流正在尝试序列化对象)时,我收到错误:
不能输入“System.Collections.Generic.ICollection`1[MyObject]” 连载了。考虑使用 DataContractAttribute 对其进行标记 属性,并标记您想要序列化的所有成员 DataMemberAttribute 属性。如果类型是集合,请考虑 使用 CollectionDataContractAttribute 对其进行标记。请参阅 其他受支持类型的 Microsoft .NET Framework 文档。
有什么想法可以解决这个问题吗?
I am trying to persist a workflow that has a EF POCO in it as a variable. When I try to persist (and workflow is trying to serialize the object), I get an error:
Type 'System.Collections.Generic.ICollection`1[MyObject]' cannot be
serialized. Consider marking it with the DataContractAttribute
attribute, and marking all of its members you want serialized with the
DataMemberAttribute attribute. If the type is a collection, consider
marking it with the CollectionDataContractAttribute. See the
Microsoft .NET Framework documentation for other supported types.
Any ideas how to get around this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
将其转换为列表可能是解决此问题的最简单方法。问题是它不知道如何序列化你的集合
Turning it into a list is probably the easiest way to get around this. The problem is it doesnt know how to serialise your collection
我在这里找到了答案:
获取序列化错误尝试通过 WCF 提交 EF4 实体
结果发现 FixupCollection(在 Entities.tt 中)没有 DataContract 属性。我添加后,问题就解决了。
I found the answer here:
Get serialization error when try and submit EF4 entity via WCF
It turns out the FixupCollection (in Entities.tt) does not have the DataContract attribute. Once I added that, the issue was resolved.