title: Return JsonResult from web api without its properties
body: <p>I have a Web API controller and from there I'm returning an object as JSON from an action.</p>
  
  <p>I'm doing that like this:</p>
  
  <pre><code>public ActionResult GetAllNotificationSettings()
  {
      var result = new List&lt;ListItems&gt;();
      // Filling the list with data here...
  
      // Then I return the list
      return new JsonResult { Data = result };
  }
  </code></pre>
  
  <p>But this way the JsonResult object including its <code>Data</code> attribute is serialized as JSON. So my final JSON that is return by the action looks like this:</p>
  
  <pre><code>{
      "ContentEncoding": null,
      "ContentType": null,
      "Data": {
          "ListItems": [
              {
                  "ListId": 2,
                  "Name": "John Doe"
              },
              {
                  "ListId": 3,
                  "Name": "Jane Doe"
              },
          ]
      },
      "JsonRequestBehavior": 1,
      "MaxJsonLength": null,
      "RecursionLimit": null
  }
  </code></pre>
  
  <p>I can't serialize this JSON string because the <code>JsonResult</code> object added all kinds of other properties to it. I'm only interested in <code>ListItems</code>, nothing else. But it automatically added things like: <code>ContentType</code>, <code>MaxJsonLength</code> etc...</p>
  
  <p>Now this won't work for me because of all the other properties in the JSON string... </p>
  
  <pre><code>var myList = JsonConvert.DeserializeObject&lt;List&lt;ListItems&gt;&gt;(jsonString);
  </code></pre>
  
  <p>Is there a way to send a JSON object from the action so that it won't add all the properties that I dont need?</p>