LER DADOS JSON

 Tópico anterior Próximo tópico Novo tópico

LER DADOS JSON

VB.NET

 Compartilhe  Compartilhe  Compartilhe
#495615 - 10/11/2020 19:09:45

FUTURA
.
Cadast. em:Maio/2004


Pessoal, estou pegando um retorno formato json e desserializando em uma string, tenho o resultado abaixo, como faço para percorrer o arquivo e pegar os dados apenas das chaves que preciso ?

{
  'Order': {
    'status': 'CANCELADO',
    'id': '10',
    'date': '2014-07-25',
    'hour': '12:13',
    'customer_id': '4',
    'partial_total': '150.00',
    'taxes': '0.00',
    'discount': '0.00',
    'point_sale': 'TESTE RETORNO',




#495616 - 10/11/2020 19:36:36

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Você não está desserializando, você está simplesmente gravando em uma string.
1 - Crie a(s) classes necessárias. Pode ser à mão mesmo, mas sugiro usar o processo de 'Paste As Classes'
2 - Com isso feito, aí sim você pode desserializar

_______________________________________________________________________
Virei Orculo!
The end is nigh, be ready for the nukes!


#495617 - 10/11/2020 19:37:51

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Se vai começar a usar isso com frequencia, sugiro o uso desses métodos de serialização e desserialização como métodos de extensão de object.

_______________________________________________________________________
Virei Orculo!
The end is nigh, be ready for the nukes!


#495618 - 10/11/2020 19:47:49

FUTURA
.
Cadast. em:Maio/2004


Sim, jogando em uma string... de  inicio estou fazendo uns testes, quero percorrer esse retorno, talvez um for each, e pegar apenas alguns campos, tentei jogar em um objeto, mas ainda não consegui, tem uma forma de fazer sem usar classe ?

Dim reader As StreamReader = New StreamReader(dataStream)
Dim responseData As String = reader.ReadToEnd
Dim retorno As String = Newtonsoft.Json.JsonConvert.DeserializeObject(responseData).ToString




#495619 - 10/11/2020 21:03:23

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Serialização e desserialização, são processos que são intrinsicamente dependentes de classes. Transformar uma classe em algum formato de texto estruturado(JSON e XML), é serializar. E o processo contrário, transformar um texto estruturado em uma classe é desserializar. O que você está querendo de 'usar um for e percorrer o retorno' é completamente desnecessário e tem muitas contra-indicações. Qual o problema de usar uma classe?

_______________________________________________________________________
Virei Orculo!
The end is nigh, be ready for the nukes!


#495620 - 10/11/2020 21:04:13

FABRICIOWEB
BELO HORIZONTE
Cadast. em:Novembro/2011


Última edição em 10/11/2020 21:05:09 por FABRICIOWEB

             mais ou menos isso

                dados = JsonConvert.DeserializeObject<dadosretorno>(response)
                var id = dados.id;


      public class dadosretorno
        {
            public string id { get; set; }
        }




#495621 - 10/11/2020 21:11:42

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Citação:
:
             mais ou menos isso

                dados = JsonConvert.DeserializeObject<dadosretorno>(response)
                var id = dados.id;


      public class dadosretorno
        {
            public string id { get; set; }
        }

Pode ser assim também. Só desserializar o que quer.

_______________________________________________________________________
Virei Orculo!
The end is nigh, be ready for the nukes!


#495622 - 10/11/2020 21:30:47

FUTURA
.
Cadast. em:Maio/2004


O json de retorno é grande, não vou usar grande parte das informações, mas posso criar a classe apenas com os campos que preciso, correto ?



#495623 - 10/11/2020 21:53:53

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Citação:
:
O json de retorno é grande, não vou usar grande parte das informações, mas posso criar a classe apenas com os campos que preciso, correto ?

À princípio sim

_______________________________________________________________________
Virei Orculo!
The end is nigh, be ready for the nukes!


#495625 - 10/11/2020 23:05:44

FABRICIOWEB
BELO HORIZONTE
Cadast. em:Novembro/2011


Citação:
:
O json de retorno é grande, não vou usar grande parte das informações, mas posso criar a classe apenas com os campos que preciso, correto ?

oque vc quer é exatamente oque postei acima



#495627 - 10/11/2020 23:47:34

FUTURA
.
Cadast. em:Maio/2004


É integração com loja virtual por API,  o suporte é meio complicado, mas estou na luta. Amanhã vou testar...



 Tópico anterior Próximo tópico Novo tópico


Tópico encerrado, respostas não sao permitidas
Encerrado por FUTURA em 16/11/2020 10:59:51