Quebrar propriedades com a seção CData - XML Serialization C #

Preciso serializar meu objeto de forma que as propriedades que eu quero sejam agrupadas em seções CData. Eu esperava poder fazer algo assim:

public class Order
    {
        [JsonProperty]
        public int OrderId { get; set; }
        [JsonProperty]
        public string Name { get; set; }
        [JsonProperty]
        public int Type { get; set; }
        [JsonProperty]
        public decimal Amount { get; set; }
        [JsonProperty]
        public DateTime Date { get; set; }
        [DataMember]
        [JsonProperty]
        **[WrapCData]**
        public List<Option> ListB { get; set; }
        [DataMember]
        public List<string> ListC { get; set; }
        **[WrapCData]**
        public Product Product { get; set; }
    }

Existe algum atributo ou implementação que possa agrupar minhas propriedades específicas em torno de uma seção CData? As respostas existentes do StackOverflow sugerem mexer com a própria entidade (classe). Isso ficaria muito confuso.

No seguinte segmento:Como você serializa uma string como CDATA usando XmlSerializer?

A resposta de Philip sugere criar outra propriedade e sua propriedade CData correspondente. No entanto, a propriedade é uma sequência. CreateCDataSection () também usa uma string. Preciso agrupar meus objetos / listas personalizados em torno de CDataSections. Como eu posso fazer isso? Qualquer ajuda seria apreciada. Obrigado.

Exemplo de XML para a classe de pedido acima:

<Order xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <OrderId>2</OrderId>
  <Name>Some Name</Name>
  <Type>1</Type>
  <Amount>100</Amount>
  <Date>2015-12-07T15:10:49.6031106+05:00</Date>
  <![CDATA[
<ListB>
    <Option>
      <OptionValue>OptionValue1</OptionValue>
      <OptionName>Option1</OptionName>
    </Option>
    <Option>
      <OptionValue>OptionValue2</OptionValue>
      <OptionName>Option2</OptionName>
    </Option>
  </ListB>
]]>
  <ListC>
    <string>ListItem1</string>
    <string>ListItem2</string>
  </ListC>
  <![CDATA[
  <Product>
    <ProductId>1</ProductId>
    <Name>ProductName</Name>
    <Type>Product Type</Type>
  </Product>
]]>
</Order>

questionAnswers(1)

yourAnswerToTheQuestion