例如:

<apple />

将序列化为一个名为“apple”的类就可以了。但是,如果我想将该类称为“Dragon”,它将不会序列化(这很有意义)。我想知道如何标记“Dragon”,以便当XmlSerializer看到它时,它知道“Dragon”与

最佳答案

假设Dragon至少定义了apple所做的属性和字段的超集,那么尽管我认为您的问题实际上是在询问:

[System.Xml.Serialization.XmlType("apple")]
public class Dragon

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

关于c# - 如何使一个类反序列化为另一个名称,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8874350/

10-11 02:44