序列化对象时忽略继承的类

2023-12-13

当我从一个类继承并序列化新类时,我获得了所有属性。 我怎样才能防止这种情况发生? 我无法控制我继承的类。所以我无法向其属性添加属性(XmlIgnore)。

Example

class A 
{
    public string PropertyA {get;set;}
}

class B:A
{
    public string PropertyB {get;set;}
}

当我序列化类型为 B 的对象时,我同时获得 Property 和 Property 并且我只想要 Property

我使用的Xml序列化

Type t = serObj.GetType();
XmlSerializer xser = new XmlSerializer(t);
StringBuilder sb = new StringBuilder();
StringWriter sw = new StringWriter(sb);

xser.Serialize(sw, serObj);
string xml = sw.ToString();

If B继承自A,它继承了PropertyA,而你对此无能为力。如果你不想序列化PropertyA当序列化一个实例时B,也许你不应该继承A首先...

不管怎样,我不认为 XML 序列化可以帮助你完成你想要做的事情,除非你实现IXmlSerializable你自己...

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

序列化对象时忽略继承的类 的相关文章

随机推荐

  • 从 woocommerce 中的电子邮件模板中删除订单信息部分

    我正在尝试删除订单信息已完成订单和客户发票电子邮件的部分 在以下位置找不到如何删除它 wp content plugins woocommerce templates emails customer completed order php
  • 无法修复 Digital Ocean Droplet 上的 NGINX 502:错误网关错误 - Ubuntu 20.04

    我已将我的网站部署到 Digital Ocean Droplet Ubuntu 20 04 服务器 一切都工作正常 今天 我在本地机器上对网站做了一些更改 因此 我将更改推送到 GitHub 然后再次将 GitHub 存储库克隆到服务器 然
  • H2DB和Java,大约>两个小时的差异

    我正在开发一个比赛计时系统 在某些情况下 我需要从 H2DB 检索时间对象 与其兄弟 或姊妹 一样 时间数据类型相对于 1970 年 1 月 1 日 并以 hh mm ss 格式在 SQL 中表示 日期默认设置为 01 01 1970 它默
  • Mysql 查询返回资源 id #8 而不是所需的值[关闭]

    很难说出这里问的是什么 这个问题模棱两可 含糊不清 不完整 过于宽泛或言辞激烈 无法以目前的形式合理回答 如需帮助澄清此问题以便重新打开 访问帮助中心 您好 我正在尝试发现如何修复我的查询以返回正确的结果 这是我的查询 selectShoe
  • 使用python基于两个单词的词频统计

    网上有很多资源展示了如何对单个单词进行字数统计 喜欢this and this and this和别的 但我无法找到两个单词计数频率的具体示例 我有一个 csv 文件 其中包含一些字符串 FileList I love TV show ma
  • 通过 Angular.js 维护会话

    我正在使用 AngularJS 框架开展一个项目 我对使用这个框架还很陌生 过去我只使用纯 JavaScript 和 jQuery 该项目是一种针对利基市场的网页设计师应用程序 当用户在设计时在页面之间移动时 我想维护他们所做的所有更改的会
  • Babel 在运行 Jest 时不会编译 .test.js 文件

    运行yarn run jest no cache时 抛出一个错误 内容如下 SyntaxError Unexpected token import 我最好的猜测是 babel 没有达到这个测试文件 我需要将它们包含在 babelrc 中吗
  • 数据库:SUBSTRING 直到字符第一次出现

    我有字符串类型 abc 01 abcd 01 或 02 现在我想要子字符串 即 abc abcd 等 我正在使用 db2 as400 请建议通过 RIGHT 或 LEFT 函数进行处理 使用 POSITION 内置函数 格式为 POSITI
  • method_missing 覆盖不起作用

    我编写了一个方便的 ActiveRecord 扩展来将方法委托给基础对象 基于多表继承 class ActiveRecord Base def self acts as base class eval Q def method missin
  • 使用seaborn.swarmplot 将数据点映射到颜色图

    我想生成一个seaborn swarmplot 其中单个数据点的颜色映射到颜色图 我有一个与此类似的数据框 In 48 df Out 48 a c Key 0 1 12 1st 1 4 35 2nd 2 5 12 2nd 3 6 46 1s
  • Angular 2 ng 模块导入

    当我们在顶部导入文件时 导入 ngmodule 装饰器的元数据有什么意义 两个输入之间的差异 这些导入是完全不同的概念 文件顶部的导入是 TypeScript 导入 以使当前文件已知的类 接口和变量 与 Angular2 无关 The Ng
  • Android中使用WallpaperManager设置壁纸

    以下是我的代码 我想使用壁纸管理器设置为壁纸 我在用着通用图像加载器 但我不知道如何实现壁纸管理器 我的 setWall 不起作用 有点令人困惑 import android graphics Bitmap import android o
  • 智能编译器是否可以在不成为语言一部分的情况下完成 std​​::move 所做的所有事情?

    这是一个有点理论上的问题 但是尽管我对 std move 有一些基本的了解 但我仍然不确定它是否为该语言提供了一些理论上无法通过超级智能编译器实现的附加功能 我知道这样的代码 std string s1 STL std string s2
  • Google 表格 - 将某个范围内的值重复“n”次

    I am trying to execute the following in google sheets by repeating certain cell values from a range of cells number of r
  • 无需连接即可获取 WiFi 的 SSID?

    我想连接到SSID应用程序中的 wifi 网络 Code WifiConfiguration conf new WifiConfiguration conf SSID networkSSID 但问题是我不知道network SSID 如何获
  • Flow 无法识别回调内的细化

    此代码通过了流程检查 flow function test list Array
  • 带有相应归属链接的随机背景图片?

    我有一个页面显示 5 张图像数组中的随机背景图像 我还想在页面底部提供该图像的适当归属链接 但我不确定如何使用 javascript 或 php 执行此操作 这就是我现在所拥有的
  • 隐式复制构造函数/赋值运算符的行为

    我有一个关于 C 标准的问题 假设您有一个带有用户定义的复制构造函数和赋值运算符的基类 派生类使用编译器生成的隐式类 派生类的复制 赋值是否调用用户定义的复制构造函数 赋值运算符 或者您是否需要实现调用基类的用户定义版本 感谢您的帮助 如果
  • R 基于应用于多列的多个部分字符串过滤行

    数据集样本 diag01 lt as factor c S7211 J47 J47 K729 M2445 Z509 Z488 R13 L893 N318 L0311 S510 A047 D649 diag02 lt as factor c
  • 序列化对象时忽略继承的类

    当我从一个类继承并序列化新类时 我获得了所有属性 我怎样才能防止这种情况发生 我无法控制我继承的类 所以我无法向其属性添加属性 XmlIgnore Example class A public string PropertyA get se