JSON数据
"participant": {"id": "1"},
我尝试了以下代码。但是我得到了一个异常
String.Format(("\n\"{0}\":{\"{1}\":\"{2}\"}","participant","id","1"));
例外是
未处理的类型' System.FormatException'发生在mscorlib.dll
附加信息:索引(从零开始)必须大于或等于零且小于参数列表的大小。
答案 0 :(得分:3)
当你在string.Format调用中使用花括号时,你需要使用双花括号来转义它们。
例如:
var str = string.Format("\"{0}\": {{ \"id\": \"{1}\" }}", "participant", 5);
在string.Format中,您使用从0(零)到数字排序的占位符。它们放在单个花括号中,因此需要转义json花括号。
另一种选择是使用众多Json库中的一个为您进行序列化,例如Json.NET(http://james.newtonking.com/json)
例如
var anon = new { participant = "bob", id = 5 };
var json = JsonConvert.SerializeObject(anon);