【问题标题】:Why can't I serialize an object using DataContractSerializer?为什么我不能使用 DataContractSerializer 序列化对象?
【发布时间】:2010-10-23 18:03:46
【问题描述】:

我正在尝试使用 DataContractSerializer 对类型进行序列化,但出现以下异常。这不适用于 SOA 服务,但如果可能,我仍然希望使用 DataContractSerializer。我正在使用 .Net 3.5 SP1。

类型 'System.DelegateSerializationHolder+DelegateEntry' 带有数据合同名称 'DelegateSerializationHolder.DelegateEntry:http://schemas.datacontract.org/2004/07/System' 预计不会。添加任何类型不 静态已知到已知列表 类型 - 例如,通过使用 KnownTypeAttribute 属性或由 将它们添加到已知类型列表中 传递给 DataContractSerializer。

【问题讨论】:

    标签: c# .net wcf datacontractserializer


    【解决方案1】:

    你能发布你的类定义吗?

    您似乎正在尝试序列化一个具有委托类型字段的类,我很确定这会使序列化程序窒息。

    您是否使用 DataContract / DataMember 属性装饰您的班级?在 3.5 SP1 中,序列化程序有一个默认行为,如果没有用这些属性标记,默认情况下序列化类中的所有公共内容。也许您应该使用 DataMember 属性显式标记需要序列化的每个属性,并忽略那些不应该序列化的属性。

    除此之外,我们需要查看您的类定义以获得更多帮助。

    【讨论】:

      【解决方案2】:

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-02-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-02-29
        • 1970-01-01
        相关资源
        最近更新 更多