gpt4 book ai didi

wcf - 数据契约(Contract)和数据成员

转载 作者:行者123 更新时间:2023-12-03 23:18:03 25 4
gpt4 key购买 nike

有没有办法告诉 WCF 在返回时序列化整个类?我真的必须将 DataMember 添加到每个属性吗?

最佳答案

从 .NET 3.5 SP1 开始,您不必再这样做了。

如果您没有任何[DataContract][DataMember]属性,DataContractSerializer 类的行为类似于旧的 XmlSerializer:它将序列化类中列出的所有公共(public)读/写属性。

但是,您确实会在此过程中丢失一些东西:

  • 因为你没有[DataMember]属性,您不能再定义字段的顺序 - 它们将按出现的顺序序列化
  • 您不能省略公共(public)属性(因为在所有其他属性/字段上都需要 [DataMember])
  • 您不能将属性定义为 Required (这将再次出现在 [DataMember] 属性上)
  • 你的类现在需要有一个公共(public)的、无参数的构造函数(数据契约通常不需要)

  • 阅读 all about it in detail来自 Pluralsight 的 Aaron Skonnard。

    关于wcf - 数据契约(Contract)和数据成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5681842/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com