我从所有公共属性中删除了[DataMember]属性,但这些属性仍然显示在我的WCF操作的结果中。我发现这个链接here解释了.Net是否在线的两端,然后DataMember对确定DataContract中包含的属性没有多大影响。
那么,如何排除公共属性被包含在WCF结果中?
由于
答案 0 :(得分:1)
WCF中的序列化有几种不同的工作方式。概述了here。请注意,也可以使用[Serializable]类。
请注意该列表中的最后一项:从3.5 SP1开始,未使用任何选项注释的类仍可由WCF基础结构序列化。但是,如果你这样做,你就无法控制序列化的发生方式以及序列化的属性(这就是为什么我个人觉得这个选项是一个错误的添加,但这是另一个故事)。
有没有理由删除[DataContract] [DataMember]属性?