我正在尝试使用DataContractSerializer序列化一个类型,并在下面得到例外。这不适用于SOA服务,但我仍然希望尽可能使用DataContractSerializer。我使用的是.Net 3.5 SP1。
类型 'System.DelegateSerializationHolder + DelegateEntry' 与数据合同名称 'DelegateSerializationHolder.DelegateEntry:http://schemas.datacontract.org/2004/07/System' 不是预期的。不添加任何类型 静态地知道已知的名单 类型 - 例如,通过使用 KnownTypeAttribute属性或 将它们添加到已知类型列表中 传递给DataContractSerializer。
答案 0 :(得分:4)
您可以发布课程定义吗?
看起来你正在尝试序列化一个类型为delegate的类,我非常肯定会让串行器阻塞。
您是否使用DataContract / DataMember属性装饰了您的类?在3.5 SP1中,如果没有使用这些属性标记,则默认情况下序列化程序会对类中公共的所有内容进行序列化。也许你应该明确地标记需要使用DataMember属性序列化的每个属性,并省略那些不应该属于的属性。
除此之外,我们需要查看您的课程定义以获得更多帮助。
答案 1 :(得分:1)