我有类BookDTO表示将用于在客户端和服务之间交换数据的对象,其中服务是wcf服务具有以下属性
[Serializable]
[DataContract]
[KnownType(typeof(Book))]
public class BookDTO {...}
Run Code Online (Sandbox Code Playgroud)
这种装饰物体的正确(标准)方式是通过电线发送的吗?我见过的例子
[DataContract(NameSpace="somenamespace.DTO.Book")]
Run Code Online (Sandbox Code Playgroud)
正在[KnownType(typeof(Book))]这里redudant?
我忘了提到我已经介绍了DataMember属性,所以请忽略它.
实际上,当您使用 DataContract 元标记时,可序列化元标记不执行任何操作。这是MSDN文章中的引用:
使用 [Serialized],所有字段都将成为数据协定的一部分(除非它们被标记为 [NonSerialized])。对于 [DataContract],仅包含标有 [DataMember] 的成员。请注意,如果类型同时具有 [DataContract] 和 [Serializable] 属性,它将使用 [DataContract] 映射
http://msdn.microsoft.com/en-us/magazine/cc163569.aspx
马文在对您的问题的评论中向您描述了 KnownType 属性。
| 归档时间: |
|
| 查看次数: |
951 次 |
| 最近记录: |