Deserializando dados do Firebase no Csharp
17/01/2018
0
Olá, tudo bem!?
Eu estou trabalhando com C# em uma aplicação desktop com Firebase. Estou recuperando os dados do banco em JSON e deserializando-os usando a biblioteca Newtonsoft.Json
O problema é que eu não sei fazer um dicionário nem uma lista depois que deserializo o arquivo. Quero poder trabalhar com os dados e suas keys livremente.
Segue o código:
Os dados no RichTextBox:
Preciso transformar isso em uma lista. Como fazer?
Vlw pela ajuda.
Essa dúvida foi gerada a partir de um comentário no artigo [url descricao=''Serialização de objetos no formato JSON '']//www.devmedia.com.br/serializacao-de-objetos-no-formato-json/28686[/url]
Eu estou trabalhando com C# em uma aplicação desktop com Firebase. Estou recuperando os dados do banco em JSON e deserializando-os usando a biblioteca Newtonsoft.Json
O problema é que eu não sei fazer um dicionário nem uma lista depois que deserializo o arquivo. Quero poder trabalhar com os dados e suas keys livremente.
Segue o código:
HttpWebRequest pesquisar = (HttpWebRequest)WebRequest.CreateHttp(URL); pesquisar.ContentType = "application/json: charset=utf-8"; HttpWebResponse pesquisar1 = pesquisar.GetResponse() as HttpWebResponse; using (Stream pesquisarStream = pesquisar1.GetResponseStream()) { StreamReader reader = new StreamReader(pesquisarStream, Encoding.UTF8); var text = reader.ReadToEnd(); var listaDinamica = JsonConvert.DeserializeObject(text); richTextBox1.Text = listaDinamica.ToString(); }
Os dados no RichTextBox:
{ "-L1OD7LjENM8ZHSpS7NE": { "Idade": "18 anos", "Nome": "vitor", "Telefone": "11 970705570" }, "-L1ODHPKmz_1zcCfpZwF": { "Idade": "10 anos", "Nome": "joao", "Telefone": "9898294792" }, "-L1ODMFC92yisdG4UxPU": { "Idade": "30 anos", "Nome": "bruno", "Telefone": "9898294792" } }
Preciso transformar isso em uma lista. Como fazer?
Vlw pela ajuda.
Essa dúvida foi gerada a partir de um comentário no artigo [url descricao=''Serialização de objetos no formato JSON '']//www.devmedia.com.br/serializacao-de-objetos-no-formato-json/28686[/url]
Vitor
Curtir tópico
+ 0
Responder
Posts
17/01/2018
Joel Rodrigues
Olá, Vitor. Esse JSON não pode ser deserializado diretamente para uma lista, mas você pode percorrer os itens retornados e criar uma lista manualmente:<br />
<br />
<br />
<br />
Aqui criei um dicionário, pois cada item possui uma chave e um valor.<br />
<br />
Qualquer dúvida, é só falar.
<br />
<br /> var lista = new Dictionary<string, object>();<br /> <br /> foreach (var item in (listaDinamica as JObject).Values())<br /> {<br /> lista.Add(item.Path, item);<br /> }<br />
<br />
Aqui criei um dicionário, pois cada item possui uma chave e um valor.<br />
<br />
Qualquer dúvida, é só falar.
Responder
Clique aqui para fazer login e interagir na Comunidade :)