所以我一直在经历着我们的代码库,我已经看到了一些我们的DTO的有一个混搭[DataMember]
和[IgnoreDataMember]
属性.
在过去,我们被告知如果我们不想在DTO中序列化某些内容,只需添加[DataMember]
属性即可.然后我看到了另一个属性并进行了一些挖掘,似乎这明确表明该属性不会被序列化.
现在我的问题是,哪个更好?添加 [IgnoreDataMember]
或不添加任何内容.
我已经四处询问,似乎[IgnoreDataMember]
是从所有序列化的日子开始,你必须决定应该忽略什么(我相信.Net 2).然后他们将其更改为反向,您必须明确说明应该序列化的内容.现在看来你可以做到这两点.
Mar*_*ell 53
我已经四处询问,似乎[IgnoreDataMember]来自所有序列化的日子,你必须决定应该忽略什么(我相信.Net 2).然后他们将其更改为反向,您必须明确说明应该序列化的内容.
实际上这并不完全正确; IIRC一直都是:
[DataContract]
,则仅[DataMember]
考虑标记的成员[DataContract]
,则默认为所有内容,但您可以使用减去成员[IgnoreDataMember]
我通常只是省略了[DataMember]
我不想序列化的东西,但在很多方面[IgnoreDataMember]
更明确 - 主要是为了维护者的利益.它说"我故意没有序列化这个",而不是"也许我知道这不是序列化的,但也许我只是忘了添加属性".
要么工作.
归档时间: |
|
查看次数: |
22318 次 |
最近记录: |