C# PUT操作以错误的方式保存数据JSON WPF
我试图通过从WPF应用程序向服务器传递一组JSON数据来执行PUT操作,并使用Newtonsoft来完成。 Newtonsoft JObject为我返回正确的JSON格式和所需的数据,PUT操作也成功,但在更新数据后,我可以看到更改并没有完全反映在服务器上 我用来生成结构的JSON的代码如下 这里是输出JSON格式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
"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"}]