加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

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

发布时间:2020-12-15 18:21:35 所属栏目:百科 来源:网络整理
导读:例如: apple / 将序列化为一个名为“苹果”的类.但是,如果我想将该类称为“Dragon”,它将不会序列化(这是有道理的).我想知道如何标记“龙”,这样当XmlSerializer看到它时,它知道“龙”是一样的 解决方法 假设Dragon至少定义了apple所属的属性和字段的超集,
例如:
<apple />

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

解决方法

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

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读