c# – 如何使类反序列化为不同的名称

前端之家收集整理的这篇文章主要介绍了c# – 如何使类反序列化为不同的名称前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
例如:
<apple />

将序列化为一个名为“苹果”的类.但是,如果我想将该类称为“Dragon”,它将不会序列化(这是有道理的).我想知道如何标记“龙”,这样当XmlSerializer看到它时,它知道“龙”是一样的

解决方法

假设Dragon至少定义了apple所属的属性和字段的超集,那么competent_tech的答案是合适的,尽管我认为你的问题实际上是在询问:
[System.Xml.Serialization.XmlType("apple")]
public class Dragon

如果Dragon与苹果不兼容,那么您最好在类型之间执行显式转换.假设您的应用程序知道apple和Dragon的定义,可以通过将Apple流反序列化为apple对象,将属性映射到新的Dragon对象,然后序列化Dragon对象来实现.

猜你在找的C#相关文章