我已经了解了如何从响应中反序列化字典,但是如何发送字典?
var d = new Dictionary<string, object> {
{ "foo", "bar" },
{ "bar", 12345 },
{ "jello", new { qux = "fuum", lorem = "ipsum" } }
};
var r = new RestRequest(url, method);
r.AddBody(d); // <-- how?
var response = new RestClient(baseurl).Execute(r);
最佳答案
呃...还有其他事情搞砸了我的案子。如@Chase said ,这很简单:
var c = new RestClient(baseurl);
var r = new RestRequest(url, Method.POST); // <-- must specify a Method that has a body
// shorthand
r.AddJsonBody(dictionary);
// longhand
r.RequestFormat = DataFormat.Json;
r.AddBody(d);
var response = c.Execute(r); // <-- confirmed*
不需要将字典包装为另一个对象。
(*) 确认它使用 Fiddler 或 RestSharp 等 echo 服务发送了预期的 JSON SimpleServer
关于c# - RestSharp发送字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31526400/