我已閱讀其他答案,但我似乎仍然迷失。我正在嘗試將JSON引入我的對象中。我通過API調用一個JSON字符串,並且我想在RequestManager之後將它轉換爲對象。我是否缺少方法或什麼?而且,returnChampions2函數是錯誤的。我在方法之後發佈了一部分JSON字符串,它非常長。JSON反序列化到VB.Net對象
公共類RequestManager
Public Function returnChampions2(ByVal strRegion As String) As LeagueChampionMaster
Dim strRequest As String = "https://global.api.pvp.net/api/lol/static-data/" + strRegion + "/v1.2/champion?api_key=" + _APIKey
Return JsonConvert.DeserializeObject(Of LeagueChampionMaster)(returnJSONRequest(strRequest))
End Function
Public Class LeagueChampionMaster
Private _Type As String
Private _Version As String
Private _Data As LeagueChampion()
End Class
Public Class LeagueChampion
Private _ID As Integer
Private _Key As String
Private _Name As String
Private _Title As String
End Class
的JSON:
{ 「類型」: 「冠軍」, 「版本」: 「6.24.1」, 「數據」:{ 「賈克斯」 :{「id」:24,「key」:「Jax」,「name」:「Jax」,「title」:「Grandmaster at Arms」},「Sona」:{「id」 :「Sona」,「name」:「Sona」,「title」:「Maven of the Strings」},「Tristana」:{「id」:18,「key」:「Tristana」,「name」 「Tristana」,「title」:「 Yordle Gunner」},「Varus」:{「i d「:110,」key「:」Varus「,」name「:」Varus「,」title「:」 懲罰的箭頭「},」Fiora「:{」id「:114,」key「 「Fiora」,「name」:「Fiora」,「title」:「 Grand Duelist」},「Singed」:{「id」:27,「key」:「Singed」,「name」:「 「,」標題「:」 Mad Chemist「,」TahmKench「:{」id「:223,」key「:」TahmKench「,」name「:」Tahm Kench「,」title「:」the River 「Leblanc」:{「id」:7,「key」:「Leblanc」,「name」:「LeBlanc」,「title」:「 Deceiver」},「Thresh」:{「id 「:412,」鑰匙「:」門檻「,」名稱「:」門檻「,」標題「:」 鏈 守望者「},」噶瑪「:{」id「:43,」key「:」Karma 「,」name「:」Karma「,」title「:」 Enlightened One「},」Jhin「:{」id「:202,」key「:」Jhin「,」name「:」Jhin「, 「標題」:「 Virtuoso「}」Rumble「:{」id「:68,」key「:」Rumble「,」name「:」Rumble「,」title「:」 機械化的 威脅「},」Udyr「 「id」:77,「key」:「Udyr」,「name」:「Udyr」,「title」:「 Spirit Walker」},「LeeSin」:{「id」:64,「key」 LeeSin「,」name「:」Lee Sin「,」title「:」Blind Monk「},」Yorick「:{」id「:83,」key「:」Yorick「,」name「:」Yorick 「,」title「:」Shepherd of Souls「},」Kassadin「:{」id「:38,」key「:」Kassadin「,」name「:」Kassadin「,」title「:」 Void 「Sivir」:{「id」:15,「key」:「Sivir」,「name」:「Sivir」,「title」:「 Battle 女主人」},「MissFortune」:{ 「id」:21,「key」:「MissFortune」,「name」:「小姐 財富」,「標題」:「賞金 獵人」} ,「Draven」:{「id」:119,「key」:「Draven」,「name」:「Draven」,「title」:「 Glorious Executioner」},「Yasuo」:{「id」 157,「key」:「Yasuo」,「name」:「Yasuo」,「title」:「 Unforgiven」},「Kayle」:{「id」:10,「key」:「Kayle」 「:」Kayle「,」title「:」The Judicator「},」Shaco「:{」id「:35,」key「:」Shaco「,」name「:」Shaco「,」title「:」 Demon Jester「}」Renekton「:{」id「:58,」key「:」Renekton「,」name「:」Renekton「,」title「:」 屠夫「}, Hecarim「:{」id「:120,」key「:」Hecarim「,」name「:」Hecarim「,」title「:」 Shadow of War「},」Fizz「:{」id「:105 ,「key」:「Fizz」,「name」:「Fizz」,「title」:「潮汐 Trickster」}}}
第一「的靈魂牧羊人」,更改屬性公共否則您將無法訪問數據。然後屬性名稱需要匹配json:'_id'不會匹配'id' - 去掉下劃線。此外,數據應該是一個字典,所以你不必爲Fizz定義一個與「ziggy」相同的類 – Plutonix