title: Returning JsonResult results in 500 Internal Server Error
body: <p>I'm using jQuery's getJSON function to return a <code>JsonResult</code> from my controller.</p>
  <h2>jQuery</h2>
  <pre><code>$.getJSON(&quot;/Test/GetJsonWFA&quot;, null, function (data) {
      $(data).each(function () {
          alert(&quot;call succeeded&quot;);
          //alert(data);
      });
  });
  </code></pre>
  <h2>controller</h2>
  <pre><code>public JsonResult GetJsonWFA() 
  {
      List&lt;WorkFlowAssignment&gt; listWFAs = new List&lt;WorkFlowAssignment&gt;();
  
      listWFAs.Add(new WorkFlowAssignment() 
      { 
          ID = 1, 
          WorkFlowName = &quot;WorkFlowName1&quot; 
      });
  
      listWFAs.Add(new WorkFlowAssignment() 
      { 
          ID = 2, 
          WorkFlowName = &quot;WorkFlowName2&quot; 
      });
  
      return Json(listWFAs, JsonRequestBehavior.AllowGet);
  }
  </code></pre>
  <p>I'm getting the following error: <strong>500 Internal Server Error</strong>.</p>
  <p>If I replace the <strong>WorkFlowAssignment</strong> in <strong>GetJsonWFA</strong> with a trivial class everything works.</p>
  <p>It seems to be related to the type of object in the list.</p>
  <p>The <strong>WorkFlowAssignment</strong> class has many properties and methods.</p>
  <p>Can anyone point me in the right direction?</p>