title: Json.net serializing a flat object to key-value pair array
body: <p>I'm trying to serialize a flat object containing only string properties into JSON.
  What I get is:</p>
  
  <pre><code>{
      "Inputs": {
          "prop1": "value1",
          "prop2": "value2"
      }
  }
  </code></pre>
  
  <p>What I need is:</p>
  
  <pre><code>{
      "Inputs": [{
              "key": "prop1",
              "value": "value1"
          },
          {
              "key": "prop2",
              "value": "value2"
          }
      ]
  }
  </code></pre>
  
  <p>My first idea was to write a custom converter that would first cast the object to a dictionary (based on <a href="https://stackoverflow.com/a/4944547/9806449">https://stackoverflow.com/a/4944547/9806449</a>) and then iterate on the keys to build it into the desired format but it feels like there must be a simpler solution that eludes me.</p>
  
  <p>Any ideas?
  Thanks!</p>