C# JSON-如何发送此JSON而不出错

C# JSON-如何发送此JSON而不出错,c#,arrays,json,C#,Arrays,Json,我在重新整理JSON时遇到问题。我想将其发送到REST-API服务,但始终存在错误 JSON(用C#编写): var json = "{" + "\"nachname\":\"Rindberger\","+ "\"anmerkung\":{"+

我在重新整理JSON时遇到问题。我想将其发送到REST-API服务,但始终存在错误

JSON(用C#编写):

var json = "{" +
                          "\"nachname\":\"Rindberger\","+
                          "\"anmerkung\":{"+
                                    "\"type\":\"multipart\"," +
                                    "\"content\":[ {" +
                                                "\"contentType\":\"application/pdf name=\"jakob.pdf\","+
                                                "\"contentDisposition\":\"attachment filename=\"jakob.pdf\","+
                                                "\"data\":\"" + file + "\"," +
                                                "\"contentTransferEncoding\":\"base64\"" +
                                                "}" +
                                    "]" +
                                    "}" +
                          "}";
我知道这个JSON看起来很奇怪,但也许有人知道为什么这个JSON不起作用

我在JSON格式化程序中尝试了这个JSON,出现了一条错误消息,但我不理解这个错误消息的含义

JSON格式化程序:


我希望有人能帮助我。提前谢谢

name=\“jakob.pdf\”
filename=\“jakob.pdf\”
中缺少一些json转义和引号

有效的json应该如下所示:

{
   "nachname":"Rindberger",
   "anmerkung":{
      "type":"multipart",
      "content":[
         {
            "contentType":"application/pdf; name=\"jakob.pdf\"",
            "contentDisposition":"attachment; filename=\"jakob.pdf\"",
            "data":"FILE",
            "contentTransferEncoding":"base64"
         }
      ]
   }
}

你确定像
name=\“jakob.pdf\”
这样的文件名必须用引号括起来吗?尝试删除它们并再次测试您的代码。我经常发现使用单引号
在代码中编写JSON更容易,并且在代码上使用do a string
Replace('\''''')
。这使JSON更容易在.cs文件中读取。从第7行开始,您的JSON缺少一个下线逗号。您的“contentType”无效“值包含非转义引号。如果要在该值中使用引号,则必须对其进行转义。下面是一个显示如何转义引号的线程:
{
   "nachname":"Rindberger",
   "anmerkung":{
      "type":"multipart",
      "content":[
         {
            "contentType":"application/pdf; name=\"jakob.pdf\"",
            "contentDisposition":"attachment; filename=\"jakob.pdf\"",
            "data":"FILE",
            "contentTransferEncoding":"base64"
         }
      ]
   }
}