Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/305.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# PUT操作以错误的方式保存数据JSON WPF_C#_Wpf_Json_Json.net - Fatal编程技术网

C# PUT操作以错误的方式保存数据JSON WPF

C# PUT操作以错误的方式保存数据JSON WPF,c#,wpf,json,json.net,C#,Wpf,Json,Json.net,我试图通过从WPF应用程序向服务器传递一组JSON数据来执行PUT操作,并使用Newtonsoft来完成。 Newtonsoft JObject为我返回正确的JSON格式和所需的数据,PUT操作也成功,但在更新数据后,我可以看到更改并没有完全反映在服务器上 我用来生成结构的JSON的代码如下 这里是输出JSON格式 "token": "sadssad", "preferences": [{ "name": "books", "value": [{ "id": "52b020fda47ab

我试图通过从WPF应用程序向服务器传递一组JSON数据来执行PUT操作,并使用Newtonsoft来完成。 Newtonsoft JObject为我返回正确的JSON格式和所需的数据,PUT操作也成功,但在更新数据后,我可以看到更改并没有完全反映在服务器上 我用来生成结构的JSON的代码如下

这里是输出JSON格式

"token": "sadssad",
"preferences": [{
"name": "books",
"value": [{
    "id": "52b020fda47ab2e07f000003",
    "params": [{
        "name": "key1",
        "value": 1
    }, {
        "name": "key2",
        "value": 0
    }, {
        "name": "key3",
        "value": 0.5
    }]
}, {
    "id": "522efc12cfe1c4a56e000005",
    "params": [{
        "name": "key1",
        "value": 1
    }, {
        "name": "key2",
        "value": 0.4
    }]
}]
}, {
"name": "language",
"value": "en_US"
}, {
"name": "app_zoom",
"value": 1
}]
现在,我使用此代码在服务器上执行操作

 var httpWebRequest = (HttpWebRequest)WebRequest.Create(url_toPUT);
            httpWebRequest.ContentType = "application/json";
            httpWebRequest.Method = "PUT";
            using (var streamWriter = new   StreamWriter(httpWebRequest.GetRequestStream()))
            {
                streamWriter.Write(json_string);
                streamWriter.Flush();
                streamWriter.Close();
                var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
                if (httpResponse.StatusCode == HttpStatusCode.Created)
                {
                    bool actionStatus = true; 
                }
            }
PUT操作也很成功。但对我来说,问题是在PUT操作之后,当我检查远程服务器上的数据时,我可以看到首选项保存为

"preferences":[{"name":"books","value":"[object Object],[object Object]"},{"name":"language","value":"en_US"},{"name":"app_zoom","value":"1"}]
正如这里可以看到的,books参数的值只是[object]类型。
放置数据时会出现什么问题?有什么建议吗?

是否有错误消息?也似乎它与WPF无关。没有错误消息PUT操作成功。但当我交叉检查数据时,它将值显示为对象数组[object object],而不是值
"preferences":[{"name":"books","value":"[object Object],[object Object]"},{"name":"language","value":"en_US"},{"name":"app_zoom","value":"1"}]