Serializable没有支持直接版本控制,格式化器会获取版本控制信息,因为它集成自接口IFormater.
同时它可以直接操作成员字段,使属性封装无效。所以产生了DataContract
1. DataContract 和DataMember同时使用才会序列化类型成员
2. SvcUtil生成时只有数据契约保留命名空间,此时可以对命名空间重命名
3. DataMember特性应用到属性上,该属性必须有Get和Set属性,否则会抛出异常,DataMember用于属性或字段,同时使用导入时会重复定义
4. 仍可以使用Serializable进行标记
新增成员:发送方包含新增成员时,默认处理方式会忽略新增成员