C# 如何在C中对复杂的Json正文进行字符串格式化#
我有以下代码C# 如何在C中对复杂的Json正文进行字符串格式化#,c#,json,C#,Json,我有以下代码 var UUID = "ExampleX"; var NumID = "ExampleY"; var Payload = string.Format("{\"API1\":{\"API2\":\"API3\",\"API4\":5},\"API6\":\"{0}\",\"API7\":\"{1}\",\"API8\":\"API8\"}",UUID,NumID); 我试图用UUID和NumID替换{0}和{1}的输入,但是我一直得到以下错误 Input string was no
var UUID = "ExampleX";
var NumID = "ExampleY";
var Payload = string.Format("{\"API1\":{\"API2\":\"API3\",\"API4\":5},\"API6\":\"{0}\",\"API7\":\"{1}\",\"API8\":\"API8\"}",UUID,NumID);
我试图用UUID和NumID替换{0}和{1}的输入,但是我一直得到以下错误
Input string was not in a correct format.
我仍在学习如何编写任何帮助代码,非常感谢您可以将Json字符串设置为JObject
,然后替换API6和API7值。比如说,
var json = "{\"API1\":{\"API2\":\"API3\",\"API4\":5},\"API6\":\"{0}\",\"API7\":\"{1}\",\"API8\":\"API8\"}";
var jo = JObject.Parse(json);
jo["API6"] = UUID;
jo["API7"] = NumID;
var Payload = jo.ToString();
输出
{
"API1": {
"API2": "API3",
"API4": 5
},
"API6": "ExampleX",
"API7": "ExampleY",
"API8": "API8"
}
您必须用双括号转义json括号,以便它们不会被解释为占位符:
var Payload = string.Format("{{\"API1\":{{\"API2\":\"API3\",\"API4\":5}},\"API6\":\"{0}\",\"API7\":\"{1}\",\"API8\":\"API8\"}}",UUID,NumID);