В одну сторону:
public class Export { }
public class Delete { }
public class Tag
{
public Export Export { get; set; }
public Delete Delete { get; set; }
}
, а затем:
var tag = new Tag()
{
Export = new Export(),
Delete = new Delete(),
};
serializer.Serialize(writer, tag);
В качестве альтернативы мы можем использовать IXmlSerializable
:
public class Tag : IXmlSerializable
{
public bool HasExport { get; set; }
public bool HasDelete { get; set; }
public XmlSchema GetSchema() => null;
public void WriteXml(XmlWriter writer)
{
if (HasExport)
writer.WriteElementString("Export", null);
if (HasDelete)
writer.WriteElementString("Delete", null);
}
public void ReadXml(XmlReader reader)
{
// TODO...
}
}
, а затем:
var tag = new Tag()
{
HasExport = true,
HasDelete = true,
};
serializer.Serialize(writer, tag);