在JSON.Net序列化JSON中配置$ id - javascript

在特定情况下,使用JSON.Net反序列化时遇到一些麻烦。

我向服务器发出请求,并使用包含集合的JSON.Net序列化对象。然后,我需要在Web应用程序中向该集合添加一个对象,但是我往返于服务器以获取一个初始化的对象,该对象可以插入到我的集合客户端。然后,我将其插入集合中并尝试保存,但是由于新初始化的对象与集合中已有的其他对象具有相同的$ id,因此出现错误。

因此,服务器接收到的我的JSON具有以下一般形式:

{ 
  "$id": 1, 
  name: "random",
  myArr: [
    {"$id": 2, blah: "something"},
    {"$id": 1, blah: "This is the item inserted into the collection on the client.
This is the one causing the deserialization error. 
Note that the $id is the same as another $id already in this object graph"},
  ]
  }
}

我是否必须手动管理$ id自己来避免这种情况,还是在JSON.net中烘焙了一些东西来解决此问题?

参考方案

$ id由Json.NET自动生成,但是您可以告诉格式化程序不要生成$ id。请参见以下问题:how to remove $id during JSON serialization

您也可以只删除客户端的$ id属性:

delete item.$id;

Javascript和Python JSON-未定义变量 - javascript

例如,如果您具有以下JSON对象(删除python的分号):values = { a: 1, b: { c: 2, d: { e: 3 } }, f: 4, g: 5 }; 如果您尝试在JS中打印values,它将正常工作。但是在Python中,它将返回错误NameError: name 'a' is not defined,这意味着未定…

PHP json_encode数组到javascript关联数组 - javascript

我有一些从PHP中读取的mysqli列。它正在完美地获取和回显。$results = mysqli_fetch_assoc(mysqli_query($conn, $querystring)); echo json_encode($results); //$results = {"title":"Sea Shells"…

尝试使类似功能使用Ajax后出现内部服务器错误500 - javascript

我目前正在尝试使我喜欢的功能使用AJAX请求,以使该页面不会在用户喜欢图像时刷新,但是,每当我单击div时,我就遇到“ 500,内部服务器错误”应该触发AJAX请求。可悲的是,我不知道如何解决内部服务器错误500。这是用户喜欢图像的视图中的相关代码:<div class="submit-btn like" id='{{ $…

如何使用Javascript将字典列表解析为JSON格式? - javascript

我正在尝试解析JSON格式的词典列表,以便可以使用它们的数据创建一组列表项,其中使用此数据生成文本和ID。我将以下内容传递到我的网页,并在投放之前将其存储在隐藏的div中: [{'text': 'org1', 'id': 'org1ID'}, {'text':…

json.dump不将python列表转换为JS数组 - javascript

当我尝试将python列表传递给模板中的JavaScript时,它没有按预期将列表解析为JS数组,而是返回此[&quot;Groceries&quot;, &quot;Clothing&quot;, &quot;Takeaways&quot;, &quot;Alcohol&quot;]导致页面中…