Visual Studio - Criando Classes automaticamente a partir de JSON ou XML


       Você sabia que pode criar classes de forma automática a partir de arquivos JSON ou XML no Visual Studio ?

JSON lembra XML :

mas é diferente da XML:

Gerar classes a partir de objetos JSON o objetos XML é uma tarefa, vamos dizer assim, quase que obrigatória quando você precisa mapear dados de objetos, e, existe muito código pronto que faz isso ou você mesmo pode criar a sua rotina.

Como desenvolvedor .NET, se você utiliza o Visual Studio no dia a dia, vai gostar de ouvir que você pode realizar essa tarefa de forma automática diretamente no Visual Studio através das opções : Paste JSON as classes e Paste XML as classes no menu Edit.

Então vamos supor que você tenha o arquivo JSON abaixo e precisa gerar uma classe a partir desse arquivo:

{
"id": 1,
"nome": "Produto1",
"preco": 12.50,
"categoria": ["categoria1", "categoria2"]
}

Basta selecionar o arquivo e copiar, e, a seguir no Visual Studio abrir o menu Edit e clicar em Paste Special -> Paste JSON As Classes

public class Rootobject
{
    public int id { get; set; }
    public string nome { get; set; }
    public float preco { get; set; }
    public string[] categoria { get; set; }
}

 

A classe será gerada no local desejado conforme mostra a figura acima.

Da mesma forma vamos partir agora de um arquivo XML , veja abaixo, e gerar a sua classe:

<livro id="1">
      <autor>Autor do Livro</autor>
      <titulo>Titulo do Livro</titulo>
 </livro>

Selecione o arquivo e copie. A seguir no menu Edit do Visual Studio clique em Paste XML As Classes :

/// <remarks/>
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
[System.Xml.Serialization.XmlRootAttribute(Namespace = "", IsNullable = false)]
public partial class livro
{
    private string autorField;
    private string tituloField;
    private byte idField;
    /// <remarks/>
    public string autor
    {
        get    {     return this.autorField;      }
        set    {       this.autorField = value;  }
    }
    /// <remarks/>
    public string titulo
    {
        get   {  return this.tituloField;   }
        set   {   this.tituloField = value;   }
    }
    /// <remarks/>
    [System.Xml.Serialization.XmlAttributeAttribute()]
    public byte id
    {
        get  {   return this.idField; }
        set  {   this.idField = value;  }
    }
}

O resultado é mais verboso mas a classe é gerada conforme mostrado acima.

Ponto para o Visual Studio.

Disseram-lhe, pois: Onde está teu Pai? Jesus respondeu: Não me conheceis a mim, nem a meu Pai; se vós me conhecêsseis a mim, também conheceríeis a meu Pai.
João 8:19

Veja os Destaques e novidades do SUPER DVD Visual Basic (sempre atualizado) : clique e confira !

Quer migrar para o VB .NET ?

Quer aprender C# ??

Quer aprender os conceitos da Programação Orientada a objetos ?

Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ?

Quer aprender a criar aplicações Web Dinâmicas usando a ASP .NET MVC 5 ?


  Gostou
?   Compartilhe no Facebook   Compartilhe no Twitter

 

Referências:


José Carlos Macoratti