RestSharp AddBody adding double quote in JSON parameter

I am calling API with RESTSharp

  var client = new RestClient("http://demoservice.com");
  var request = new RestRequest("callapi", "put");          
  request.RequestFormat = DataFormat.Json;

string jsonaction = “{“tokenid”:“x123x45”,“userid”:“2456”,“ip”:“192.168.1.20”,“transaction”:“6”,“actionCode”:“78”,“jtoken”:“systemtoken”}”;
request.AddBody(new { action = “SAVE”, data = “savedata”, token = “systemtoken”, jsonaction = jsonaction });

I am checking in debug data passing in request. and my expected output as follows

{“action”:“SAVE”,“data”:“savedata”,“token”:“systemtoken”,“jsonaction”:{“tokenid”:“x123x45”,“userid”:“2456”,“ip”:“192.168.1.20”,“transaction”:“6”,“actionCode”:“78”,“jtoken”:“systemtoken”}}

But getting

{“action”:“SAVE”,“data”:“savedata”,“token”:“systemtoken”,“jsonaction”:“{“tokenid”:“x123x45”,“userid”:“2456”,“ip”:“192.168.1.20”,“transaction”:“6”,“actionCode”:“78”,“jtoken”:“systemtoken”}”}

If anybody can guide how to post for JSON I have tried with Addbody and AddJsonBody but nothing works.

#c-sharp #json #web-service

1 Likes106.70 GEEK