DataContractSerializer 是 WCF 中配合 [DataContract] 和 [DataMember] 特性实现数据序列化与反序列化的核心类,要求显式标记可序列化成员,支持命名空间、顺序、默认值控制及多态扩展。

DataContractSerializer 是 WCF 中用于序列化和反序列化数据的核心类,专门配合 [DataContract] 和 [DataMember] 特性使用,确保类型能被 WCF 正确传输和解析。
定义可序列化的数据契约
用 [DataContract] 标记类,用 [DataMember] 标记需要参与序列化的字段或属性。不加 [DataMember] 的成员默认不序列化(包括 public 字段)。
示例:
[DataContract]
public class Person
{
[DataMember]
public string Name { get; set; }
[DataMember]
public int Age { get; set; }
// 这个不会被序列化
public string InternalNote { get; set; }
// 可选:指定名称、顺序、是否必需、是否应忽略
[DataMember(Name = "ID", Order = 0, IsRequired = true, EmitDefaultValue = false)]
public int PersonId { get; set; }
}
登录后复制
用 DataContractSerializer 序列化对象到 XML
创建 DataContractSerializer 实例时传入类型;用 WriteObject 写入流(如 MemoryStream 或文件流)。
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
还木有评论哦,快来抢沙发吧~