gpt4 book ai didi

c# - 无法将类型 'ulong[]' 隐式转换为 'Newtonsoft.Json.Linq.JToken'

转载 作者:行者123 更新时间:2023-12-01 23:49:06 24 4
gpt4 key购买 nike

我正在尝试将 ulong[] 保存到我的 json 文件中。

这是我的代码:

ulong[] ts = new ulong[3];
ts[0] = 749076952626757682
ts[1] = 849076952626757682
ts[2] = 949076952626757682

var json = string.Empty;
json = File.ReadAllText(@"file.json");
dynamic jsonObj = JsonConvert.DeserializeObject(json);

jsonObj["whitelistedChannels"] = ts; //this is the line on which i'm getting the error
tring output = JsonConvert.SerializeObject(jsonObj, Formatting.Indented);
File.WriteAllText(configFile, output);

这是我的json

{
"test": []
}

我希望我的 json 文件看起来像这样:

{
"test": [749076952626757682,849076952626757682,949076952626757682]
}

我该怎么做?提前致谢。

最佳答案

如果您不想创建一个特殊的类来表示您的 json 结构,您可以反序列化为 JObject 并使用 Add 方法添加新属性,使用 JToken.FromObject:

var jObj = JsonConvert.DeserializeObject<JObject>(json); // or use `JObject.Parse`
ulong[] ts = new ulong[3];
ts[0] = 749076952626757682;
ts[1] = 849076952626757682;
ts[2] = 949076952626757682;
jObj.Add("whitelistedChannels", JToken.FromObject(ts));

或像这样设置现有的(实际上也适用于添加):

jObj["test"] = JToken.FromObject(ts);

关于c# - 无法将类型 'ulong[]' 隐式转换为 'Newtonsoft.Json.Linq.JToken',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63704963/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com