我正在尝试将JSON有效负载转义为字符串。目前,我在尝试完成转换时收到“输入字符串格式不正确”异常错误。
我认为在转义字符串的开头和结尾使用双花括号会解决它,但它没有。
以下是代码:
var newGuidIDEmployeeSyncRequest = Guid.NewGuid().ToString();
string test = String.Format("{\"confirmMessageID\":{\"idValue\":\"{0}\"},\"createDateTime\":\"{1}\",\"requestReceiptDateTime\":\"{2}\",\"protocolCode\":{\"codeValue\":\"http\"},\"requestStatusCode\":{\"codeValue\":\"succeeded\"},\"requestMethodCode\":{\"codeValue\":\"POST\"},\"requestLink\":null,\"resourceMessages\":[{\"resourceMessageID\":{\"idValue\":\"G3R4RG61Y2T3P1QZ\"},\"resourceStatusCode\":{\"codeValue\":\"succeeded\"},\"processMessages\":[{\"userMessage\":{\"messageTxt\":\"Operation Successful for G3R4RG61Y2T3P1QZ\"}}]}]}", newGuidIDEmployeeSyncRequest, DateTime.Now.ToString("yyyy-MM-ddTHH:mm:ss"), DateTime.Now.ToString("yyyy-MM-ddTHH:mm:ss"));
任何人都可以指导我在哪里出错吗?
答案 0 :(得分:13)
使用string.Format,'{'和'}'字符需要转义为{{和}}
string.Format("{ a: {0} }", 2); // throws exception
string.Format("{{ a: {0} }}", 2); // returns the string "{ a: 2 }"