
RestSharp Manually Add Json String To Body
request.AddParameter("application/json", jsonStr, ParameterType.RequestBody);
Somtimes when you use
request.AddJsonBody(object);
to add Json body will result in data losing. eg. A Class like this
public class ReportMessage
{
public string reportName {get;set;}
public string dataSetName {get;set;}
public List<dynamic> data {get;set;}
}
may be serialized to
{\"reportName\":\"aaa.frx\",
\"dataSetName\":\"data\",
\"data\":[\"filed1\":\"field1data\",\"field2\":\"field2data\"}]
}
or
{"reportName":"aaa.frx",
"dataSetName":"data",
"data":[{"filed1":"field1data","field2":"field2data"},
{"filed3":"field1data","field4":"field2data"},
{"filed5":"field1data","field6":"field2data"}
]
}
when I POST that to a Nancy Host using PostMan or Fiddler, it can be deserilized OK. But When Post it using RestSharp with AddJsonBody, then
{"reportName":"aaa.frx",
"dataSetName":"data",
"data":[
{},{},{}
]
}
the data disappeared.