[英]How To String Format Complex Json Body in C#
i have the following code我有以下代码
var UUID = "ExampleX";
var NumID = "ExampleY";
var Payload = string.Format("{\"API1\":{\"API2\":\"API3\",\"API4\":5},\"API6\":\"{0}\",\"API7\":\"{1}\",\"API8\":\"API8\"}",UUID,NumID);
i'm trying to replace the input for {0} and {1} with UUID and NumID but i kept getting the following Error我正在尝试用 UUID 和 NumID 替换 {0} 和 {1} 的输入,但我一直收到以下错误
Input string was not in a correct format.
i'm still learning how to code any help is appreciated我仍在学习如何编码任何帮助表示赞赏
You could parse the Json String as JObject
and then replace the API6 and API7 values.您可以将 Json 字符串解析为
JObject
,然后替换 API6 和 API7 值。 For example,例如,
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();
Output输出
{
"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);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.