Receiving Json deserialized object as string in Web API controller
<p>Following is my Json input from Ui:</p>

<pre><code>{
    "data": [{
        "Id": 1
    }, {
        "Id": 2
    }, {
        "Id": 3
    }]
}
</code></pre>

<p>I can receive it without an issue in the object structure shown below:</p>

<pre><code>   public class TestController : ApiController
    {
        /// &lt;summary&gt;
        /// Http Get call to get the Terminal Business Entity Wrapper
        /// &lt;/summary&gt;
        /// &lt;param name="input"&gt;&lt;/param&gt;
        /// &lt;returns&gt;&lt;/returns&gt;

        [HttpPost]
        [Route("api/TestJsonInput")]
        public string TestJsonInput([FromBody] TestInput input)
        {
            return JsonConvert.SerializeObject(input.data);
        }        

        public class TestInput
        {
            public List&lt;Info&gt; data { get; set; }
        }

        public class Info
        {
            public int Id { get; set; }
        }

    }
</code></pre>

<p>However my objective is to receive in following API method:</p>

<pre><code>      [HttpPost]
        [Route("api/TestJsonInput")]
        public string TestJsonInput1([FromBody] string input)
        {
            return input;
        }
</code></pre>

<p>Reason for this requirement is, I have no use of the Json object de-serialized via Web API, I just need to persist the actual Json to the Database and fetch and return to Ui, which will parse it back.</p>

<p>As I am not able to receive in the string input as suggested, so I have to carry out extra step of Json serialization, de-serialization to achieve the objective. Any mechanism for me to avoid this workaround totally by receiving in a string and using it directly. I am currently testing using Postman</p>