如何确定类是否具有 DataContract 属性?
我正在编写一个序列化函数,需要确定类是否具有 DataContract 属性。基本上,如果类具有 DataContract 属性,函数将使用 DataContractSerializer,否则它将使用 XmlSerializer。
感谢您的帮助!
I'm writing a serialization function that needs to determine whether class has DataContract attribute. Basically function will use DataContractSerializer if class has DataContract attribute, otherwise it will use XmlSerializer.
Thanks for your help!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
测试 DataContractAttribute 的最简单方法可能是:
也就是说,现在 DC 支持 POCO 序列化,但它并不完整。 DC 可串行性的更完整测试是:
The simplest way to test for DataContractAttribute is probably:
That said, now that DC supports POCO serialization, it is not complete. A more complete test for DC serializability would be:
尝试类似的方法:
Try something like:
我发现除了检查 DataContractAttribute 之外,还应该允许 System.ServiceModel.MessageContractAttribute 和 System.SerializedAttribute。
I found that in addition to checking for DataContractAttribute, you should also allow for System.ServiceModel.MessageContractAttribute and System.SerializableAttribute.