JArray 添加JObject 并添加 JObject Key
时间: 2024-10-21 19:02:58 浏览: 7
在 .NET 的 Newtonsoft.Json 库中,如果你有一个 `JArray` (JavaScript 数组) 和一个 `JObject` (JavaScript 对象),你可以通过 `JArray.Add()` 方法将 `JObject` 添加到数组中,然后像操作普通对象一样设置它的键值对。
例如,假设你有如下两个对象:
```csharp
JArray jsonArray = new JArray();
JObject jsonObject = new JObject();
jsonObject["Name"] = "Alice";
jsonObject["Age"] = 35;
```
要在 `jsonArray` 中添加 `jsonObject` 并设置新的键值对,可以这样做:
```csharp
// 将JsonObject添加到JArray
jsonArray.Add(jsonObject);
// 然后,在已经存在的JSONObject上添加新的键值对
jsonObject["NewKey"] = "NewValue"; // 假设你想添加一个新的"NewKey"键
```
现在,`jsonObject` 包含了新添加的键值对:
```csharp
string value = jsonObject["NewKey"].ToString(); // 获取新增键的值
```
相关问题
Accessed JArray values with invalid key value: "FMATERIALIDCHILD". Array position index expected.
这个错误通常出现在使用 `JArray` 对象访问元素时,传入的键值不是数组的下标而是一个字符串。在 `JArray` 中,元素的访问需要使用整数下标,而不是字符串键值。
例如,如果你使用以下代码访问 `JArray` 对象 `myArray` 中的第一个元素:
```
myArray["0"]
```
就会出现这个错误,因为应该使用整数下标:
```
myArray[0]
```
如果你需要使用字符串键值来访问元素,应该使用 `JObject` 对象而不是 `JArray` 对象。
阅读全文