Cómo generar automáticamente un archivo de clase C # desde una cadena de objetos JSON

Dado el siguiente objeto JSON,

form = { "name": "", "address": { "street": "", "city": "", "province": "", "postalCode": "", "country": "" }, "phoneDay": "", "phoneCell": "", "businessName": "", "website": "", "email": "" } 

¿Qué es una herramienta para autogenerar la siguiente clase de C #?

 public class ContactInfo { public string Name { get; set; } public Address Address { get; set; } public string PhoneDay { get; set; } public string PhoneCell { get; set; } public string BusinessName { get; set; } public string Website { get; set; } public string Email { get; set; } } public class Address { public string Street { get; set; } public string City { get; set; } public string Province { get; set; } public string PostalCode { get; set; } public string Country { get; set; } } 

Ya hemos analizado estas preguntas:

Generar clases de C # a partir del esquema de JSON. Pregunta sobre los Esquemas de JSON, que pueden ser un enfoque a seguir en el futuro.

Beneficios y desventajas de las clases generadas de C # para objetos Json

Tres opciones:

  • Utilice la herramienta web json2csharp gratuita sin instalar nada.

  • Si tiene Web Essentials en Visual Studio, use Editar> Pegar especial> pegar JSON como clase.

  • Utilice el archivo jsonclassgenerator .exe gratis

Pros y contras:

  • jsonclassgenerator se convierte en PascalCase pero los otros no.

Visual Studio 2012 (con ASP.NET y Web Tools 2012.2 RC instalado) es compatible de forma nativa .

Visual Studio 2013 en adelante tiene esto incorporado.

Visual Studio Pega la captura de pantalla JSON as Classes (Imagen cortesía: robert.muehsig )

Si instala Web Essentials en Visual Studio, puede ir a Editar => Pasado especial => Pegar JSON como clase.

Esa es probablemente la más fácil que hay.

Web Essentials: http://vswebessentials.com/