【发布时间】:2018-09-27 11:10:32
【问题描述】:
我有一个控制台应用程序,我想从中发送以下给定的 json 作为 api 的请求正文。任何人都可以建议我如何发送。
代码
entity en = new ConsoleApplication3.entity();
en.Size = "L";
en.name = "test";
en.view.Alignment = "left";
en.view.IND = true;
en.view.Object = "front";
string jsondata = JsonConvert.SerializeObject(en, Formatting.Indented);
这里jsondata作为
{
"view": {
"Alignment": "left",
"InteriorIND": false,
"SteeringWheelPosition": "RHD",
"Object": "front"
},
"Size": "L",
"Vin": "WVWZZZTST00000001"
}
JSON 我所期待的。
{
"size": {
"value":"L"
},
"view": {
"alignment": {
"value":"left"
},
"IND":true,
"object": {
"value":"xx"
},
"name": {
"value":"test"
}
}
}
编码我所拥有的
string jsondata =??????
var req = new HttpRequestMessage(HttpMethod.Post, url) { Content = new StringContent(jsondata) };
req.Headers.Add("Authorization", "token");
req.Headers.AcceptCharset.Add(StringWithQualityHeaderValue.Parse("UTF-8"));
req.Content.Headers.ContentType= new MediaTypeHeaderValue("application/json");
HttpResponseMessage response = await client.SendAsync(req);
// parse the response and return the data.
string jsonString = await response.Content.ReadAsStringAsync();
object responseData = JsonConvert.DeserializeObject(jsonString);
return (dynamic)responseData;
【问题讨论】:
-
你会通过什么逻辑将字符串列表转换成那种形式?
-
什么是
List<string, string>? -
我假设
List<string,string>表示Dictionary<string,string>或List<(string,string)>。如果不知道如何对值进行分组,仍然不可能产生所需的输出 -
如果您对 JSON 格式有任何控制权,我想您应该简化它并删除所有
value参数,而只使用"size": "L"之类的东西。