第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何將包含具有固定模式的值數(shù)組的對(duì)象反序列化為強(qiáng)類型數(shù)據(jù)類?

如何將包含具有固定模式的值數(shù)組的對(duì)象反序列化為強(qiáng)類型數(shù)據(jù)類?

白衣非少年 2019-07-25 15:01:56
如何將包含具有固定模式的值數(shù)組的對(duì)象反序列化為強(qiáng)類型數(shù)據(jù)類?我在查找以特定格式反序列化某些JSON數(shù)據(jù)的干凈(盡可能)方法時(shí)遇到了一些麻煩。我想將數(shù)據(jù)反序列化為強(qiáng)類型數(shù)據(jù)對(duì)象類,關(guān)于此的具體細(xì)節(jié)非常靈活。以下是數(shù)據(jù)的示例:{     "timestamp": 1473730993,     "total_players": 945,     "max_score": 8961474,     "players": {             "Player1Username": [             121,             "somestring",             679900,             5,             4497,             "anotherString",             "thirdString",             "fourthString",             123,             22,             "YetAnotherString"],         "Player2Username": [             886,             "stillAstring",             1677,             1,             9876,             "alwaysAstring",             "thirdString",             "fourthString",             876,             77,             "string"]         }}我不確定的具體部分是:球員的集合會(huì)被視為字典嗎?用戶名可以作為鍵,但是值會(huì)讓我失望,因?yàn)樗鼘⑹亲址驼麛?shù)值的混合集合。玩家完全由未命名的值組成。我?guī)缀蹩偸鞘褂靡衙麑傩院椭档腏SON數(shù)據(jù)(例如,最頂層的timestamp,total_players等)假設(shè)我有一個(gè)這樣的頂級(jí)課程:public class ScoreboardResults{     public int timestamp { get; set; }     public int total_players { get; set; }     public int max_score { get; set; }     public List<Player> players { get; set; }}鑒于它基本上是用戶名作為鍵的鍵/值,并且值是混合整數(shù)和字符串的集合,Player對(duì)象會(huì)是什么樣子?每個(gè)玩家元素的數(shù)據(jù)總是以相同的順序,所以我知道集合中的第一個(gè)值是他們的UniqueID,第二個(gè)值是玩家描述等。我希望玩家類是這樣的:public class Player{     public string Username { get; set; }     public int UniqueID { get; set; }     public string PlayerDescription { get; set; }     ....     ....     .... Following this pattern for all of the values in each player element    ....     ....}我確信使用JSON.NET這是一個(gè)非常簡單的事情,這就是為什么我想避免我對(duì)如何實(shí)現(xiàn)這一點(diǎn)的任何想法。我想出的將是不優(yōu)雅的,并且在序列化過程中可能在某種程度上容易出錯(cuò)。編輯以下是使用snow_FFFFFF建議的過去作為JSON類時(shí)生成的類:public class Rootobject{     public int timestamp { get; set; }     public int total_players { get; set; }     public int max_score { get; set; }     public Players players { get; set; }}public class Players{     public object[] Player1Username { get; set; }     public object[] Player2Username { get; set; }}我不清楚的是如何將“players”元素中的JSON數(shù)據(jù)反序列化為List,其中Player1Username是Player對(duì)象上的簡單字符串屬性。至于混合字符串和整數(shù)的集合,我相信我可以將它們放到Player對(duì)象的各個(gè)屬性中而不會(huì)出現(xiàn)問題。
查看完整描述

3 回答

?
紫衣仙女

TA貢獻(xiàn)1839條經(jīng)驗(yàn) 獲得超15個(gè)贊

一個(gè)好的入門方法是讓visual studio根據(jù)JSON生成你的類。打開一個(gè)空白的類文件,然后轉(zhuǎn)到EDIT - > PASTE SPECIAL - > PASTE JSON As CLASSES。

這將生成一個(gè)包含必要類的文件,以序列化/反序列化您的JSON。


查看完整回答
反對(duì) 回復(fù) 2019-07-25
  • 3 回答
  • 0 關(guān)注
  • 472 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)