title: Serialize the List<string> value within a Dictionary<string, List<string>> as simple array
body: <p>Using the Mongo .Net Driver 2.7.2, I am attempting to customize how a Dictionary property is getting serialized.  Specifically, I would like the Dictionary's value, a <code>List&lt;string&gt;</code> to serialize as a simple array.</p>
  
  <p><strong>Current document structure generated by serializer</strong></p>
  
  <p>This is how the property is currently serializing.  As you can see, <code>someProperty</code>is being serialized as an object, with _t and _v storing the <code>.NET</code> type and value. </p>
  
  <pre><code>viewedBy: Object
      someProperty: Object
          _t: "System.Collections.Generic.List`1[System.String]"
          _v: Array
  </code></pre>
  
  <p>I understand the type information is stored for deserialization back into the c# POCO, but for my case I don't need this metadata, as my type is just a string array.</p>
  
  <p><strong>Desired document structure</strong></p>
  
  <p>I would like the property values to serialize as simple arrays of strings,as below
  </p>
  
  <pre><code>viewedBy: Object
      someProperty: Array
  </code></pre>
  
  <p>Here is the class I am attempting to customize the serialization strategy for.</p>
  
  <pre class="lang-cs prettyprint-override"><code>public class MyDocument
  {
      public Dictionary&lt;string, List&lt;string&gt;&gt; ViewedBy { get; set; }
  }
  </code></pre>
  
  <p><strong>Current Mapping</strong></p>
  
  <p>Here is the mapping information I have provided for my class. </p>
  
  <pre><code>        BsonClassMap.RegisterClassMap&lt;MyDocument&gt;(cm =&gt;
          {
              cm.AutoMap();
  
              cm.MapMember(c =&gt; c.ViewedBy)
                .SetElementName("viewedBy")
                .SetSerializer(new 
             DictionaryInterfaceImplementerSerializer&lt;Dictionary&lt;string, 
                List&lt;string&gt;&gt;&gt;(DictionaryRepresentation.Document));
  
             // How do I specify the dictionary value should serialize as simple array?
          });
  </code></pre>
  
  <p><strong>Question</strong></p>
  
  <p>How can I instruct the serializer to serialize the dictionary's value, of <code>.NET</code> type <code>List&lt;string&gt;</code> to serialize into a simple string array? </p>
  
  <p>Preference is for a fluent mapping solution, rather than using Attributes.</p>