title: How to include column metadata in JSON for an empty DataTable
body: <p>I am looking to properly describe column metadata in JSON which is later parsed by Newtonsoft to build a C# <code>DataTable</code>. In this way, I'm hoping to solve a problem of getting a <code>DataTable</code> with no rows or no columns, but where I need the columns to be created with a label and hopefully with a data type, even when I pass an empty table.</p>
  
  <p>An example for standard input:</p>
  
  <pre><code>{
      "BrokerID": "998",
      "AccountID": "1313",
      "Packages": [
          {
              "PackageID": 226,
              "Amount": 15000,
              "Auto_sync": true,
              "Color": "BLUE"
          },
          {
              "PackageID": 500,
              "Amount": 15000,
              "Auto_sync": true,
              "Color": "PEACH"
          }
      ]
  }
  </code></pre>
  
  <p>An example of input with an empty table:</p>
  
  <pre><code>{
      "BrokerID" : "998",
      "AccountID" : "1313",
      "Packages":[]
  }
  </code></pre>
  
  <p>When I parse this using <code>JsonConvert.DeserializeObject&lt;DataTable&gt;(params["Packages"]);</code>, I get no rows and, obviously, no columns. I'm looking for a way to describe the columns metadata in the JSON's body.</p>