title: Deserialization of reference types without parameterless constructor is not supported
body: <p>I have this API</p>
  <pre class="lang-cs prettyprint-override"><code> public ActionResult AddDocument([FromBody]AddDocumentRequestModel documentRequestModel)
          {
              AddDocumentStatus documentState = _documentService.AddDocument(documentRequestModel, DocumentType.OutgoingPosShipment);
              if (documentState.IsSuccess)
                  return Ok();
  
              return BadRequest();
          }
  </code></pre>
  <p>And this is my request model</p>
  <pre class="lang-cs prettyprint-override"><code>    public class AddDocumentRequestModel
      {
          public AddDocumentRequestModel(int partnerId, List&lt;ProductRequestModel&gt; products)
          {
              PartnerId = partnerId;
              Products = products;
          }
  
          [Range(1, int.MaxValue, ErrorMessage = &quot;Value for {0} must be between {1} and {2}.&quot;)]
          public int PartnerId { get; private set; }
  
          [Required, MustHaveOneElement(ErrorMessage = &quot;At least one product is required&quot;)]
          public List&lt;ProductRequestModel&gt; Products { get; private set; }
      }
  </code></pre>
  <p>so when I'm trying to hit the API with this body</p>
  <pre class="lang-json prettyprint-override"><code>{
          &quot;partnerId&quot;: 101,
          &quot;products&quot;: [{
              &quot;productId&quot;: 100,
              &quot;unitOfMeasureId&quot;: 102,
              &quot;quantity&quot;:5
          }
       ]
  }
  </code></pre>
  <p>this is the request :  System.NotSupportedException: Deserialization of reference types without parameterless constructor is not supported. Type 'Alati.Commerce.Sync.Api.Controllers.AddDocumentRequestModel'</p>
  <p>I don't need parameterless constructor,because it doesn't read the body parameters.Is there any other way for deserialization?</p>