C# 从序列化中排除整个类型(类)

C# 从序列化中排除整个类型(类),c#,xml,C#,Xml,我想知道是否有办法在整个类型(类)上使用[XmlIgnore]标记 所以我有三个特别的课程 由类A和类B扩展的基类 我希望将类A中的所有内容序列化,但不应序列化类B中的任何内容 我尝试将[XmlIgnore]标记添加到类B的所有属性中,但效果不佳,因为, 1.某些属性从基类重写 2.某些属性是从基类继承的 反正我能做到?? 当序列化为xml时,是否有一种方法可以忽略整个类型?我认为您可能必须将XMLIgnore标记添加到类中的每个属性。有些属性不在类B中,而是从基类继承而来,因此它们仍然会显示在

我想知道是否有办法在整个类型(类)上使用[XmlIgnore]标记

所以我有三个特别的课程 由类A和类B扩展的基类

我希望将类A中的所有内容序列化,但不应序列化类B中的任何内容

我尝试将[XmlIgnore]标记添加到类B的所有属性中,但效果不佳,因为, 1.某些属性从基类重写 2.某些属性是从基类继承的

反正我能做到??
当序列化为xml时,是否有一种方法可以忽略整个类型?我认为您可能必须将XMLIgnore标记添加到类中的每个属性。

有些属性不在类B中,而是从基类继承而来,因此它们仍然会显示在xmlIt中。听起来,如果您不想在B中序列化a中的属性,那么也许你不应该继承A。我认为没有办法解决这个问题。我希望类A中的所有属性都被序列化,我只是不希望类B中的任何属性被序列化。您尝试过[NonSerialized()]属性吗?只有公共对象才会被序列化,因此删除公共对象才有效。这不是一个好的解决方案,因为我需要将属性公开一段时间,然后创建公共接口。