Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用Newtonsoft JSON.NET删除JSON字符串中的新行_C#_Asp.net_Json_Rest_Json.net - Fatal编程技术网

C# 使用Newtonsoft JSON.NET删除JSON字符串中的新行

C# 使用Newtonsoft JSON.NET删除JSON字符串中的新行,c#,asp.net,json,rest,json.net,C#,Asp.net,Json,Rest,Json.net,我正在使用Newtonsoft JSON.NET创建一个动态JSON对象,该对象看起来不错,但在发送到REST API时无法识别。我最好的猜测是JSON字符串中有新行,这破坏了API解析数据的过程。有没有办法确保从我发送的JSON数据中删除所有新行 dynamic MyPerson = new JObject(); MyPerson.username = "CodeMonkey"; MyPerson.first_name = "Monkey";

我正在使用Newtonsoft JSON.NET创建一个动态JSON对象,该对象看起来不错,但在发送到REST API时无法识别。我最好的猜测是JSON字符串中有新行,这破坏了API解析数据的过程。有没有办法确保从我发送的JSON数据中删除所有新行

        dynamic MyPerson = new JObject();
        MyPerson.username = "CodeMonkey";
        MyPerson.first_name = "Monkey";
        MyPerson.last_name = "banana";
        MyPerson.email_address = "bananacrazy@monkey.com";
        MyPerson.is_active = true;


        string PersonData = JsonConvert.SerializeObject(MyPerson);
如果使用Response.Write,则返回的JSON为:

{"username":"CodeMonkey","first_name":"Monkey","last_name":"Banana","email_address":"monkey@bananacrazy.com","is_active":true}

那么
PersonData
中的字符串是什么样子的?默认情况下JSON.NET不进行缩进。如果我使用Response.Write,我会得到上面的字符串。是的,所以没有换行符。。。你找错了原因。也许详细说明一下“破坏API解析数据的过程”,这就是我害怕的。谢谢。在JSON中,空行在交错和字符串内部都是有效的。听起来您的api提供程序的反序列化程序有缺陷(或者api当前刚刚损坏)