Предполагая, что у нас есть два класса: Apple, Pineapple
public class Apple:Fruit{}
public class Pineapple:Fruit{}
И у нас есть абстрактный класс с именем Fruit
[XmlInclude(typeof(Apple))]
[XmlInclude(typeof(Pineapple))]
public abstract class Fruit{}
И у нас есть класс под названием "Меню"
public class Menu
{
[XmlElement("apple",typeof(Apple))]
[XmlElement("",typeof(Pineapple))]
public Fruit fruit {get;set;}
}
Я хотел бы игнорировать свойство фруктов, когда тип - ананас.
Не знаете, почему вы хотели бы это сделать, но вы можете использовать шаблон ShouldSerialize<PropertyName>
для его достижения:
public class Menu
{
[XmlElement("apple",typeof(Apple))]
public Fruit fruit {get;set;}
public bool ShouldSerializefruit()
{
return !(fruit is Pineapple);
}
}