questo è un tipo di dati che devo de-serializzare
{
"id": "M:11427",
"title": "DAX30",
"nextStartId": "S:727831",
"sections": [
{
"type": "HIGHLIGHTS",
"baseResults": [ values of type highlights ],
"hasMore": true
},
{
"type": "CHART",
"hasMore": false,
"chartTypes": [ string values ]
},
{
"type": "TWEETS",
"baseResults": [ values of type tweets ],
"hasMore": true
}]
}
Devo serializzare & deserializzare tutti. Voglio creare qualcosa che possa contenere i valori corrispondenti a baseResults.
c'è una classe principale che rappresenta l'intero json
class Data
{
...
ObservableCollection<Section> sections{get;set;}
...
}
quindi c'è una classe che rappresenta i dati nella sezioni array di json principale
class Section
{
string type{get;set;}// thi elements decides what kind of data would be in baseResults
dynamic baseResults{get;set;} //it should hold ObservableCollection of either Highlights or Tweets etc.
}
la classe base per il tipo di dati provenienti dall'array baseResults è una classe astratta class CategoryData
e i suoi figli sono class Highlights
& class Tweets
Sto utilizzando dynamic
poiché non posso assegnare ObservableCollection<CategoryData>
a ObservableCollection<Highlights>
. Ma non voglio usare questo tipo di oggetto dinamico o di oggetto invece voglio qualcosa di rilevante. per favore suggeriscimi quale potrebbe essere un approccio migliore per questo problema.