我有一個生成 JSON 格式的程序。我想要做的是將 json 結(jié)果存儲到 C# 中的數(shù)組中。從 API 接收的 json:var strResponseContent = await response.Content.ReadAsStringAsync();Result.Text = strResponseContent.ToString(); **<-- this is working fine**這是json的外觀:{ "query": "banana", "topScoringIntent": { "intent": "banana", "score": 0.9086001 }, "intents": [{ "intent": "banana", "score": 0.9086001 }, { "intent": "bananania", "score": 0.559515059 } ]}并將json存儲到數(shù)組中。這是結(jié)構(gòu):public class Intents { public List<Intent> intents { get; set; } } public class Intent { public string intent { get; set; } public int score { get; set; } }最后,要轉(zhuǎn)換,我使用反序列化對象Intents intents = JsonConvert.DeserializeObject<Intent>(strResponseContent);但是,在存儲到 json 期間,錯誤就像“不能隱式地將類型 Intent 轉(zhuǎn)換為 Intents”我的錯誤是什么?如何糾正它?
2 回答

繁星點(diǎn)點(diǎn)滴滴
TA貢獻(xiàn)1803條經(jīng)驗(yàn) 獲得超3個贊
有兩件事首先 score 不是有效的 int ......所以,嘗試將 int 更改為 Decimal。第二次嘗試這樣做:
Intents intents = JsonConvert.DeserializeObject<Intents>(strResponseContent);

Cats萌萌
TA貢獻(xiàn)1805條經(jīng)驗(yàn) 獲得超9個贊
您將分?jǐn)?shù)定義為整數(shù)
public int score { get; set; }
但分?jǐn)?shù)不是整數(shù)。將其更改為雙精度或十進(jìn)制將修復(fù)它。
- 2 回答
- 0 關(guān)注
- 405 瀏覽
添加回答
舉報
0/150
提交
取消