2008-10-01 10 views
15

En primer lugar, permítanme comenzar diciendo que no soy desarrollador de .net. La razón por la que estoy haciendo esta pregunta es porque implementamos nuestra REST-API y uno de nuestros primeros socios de integración es una tienda .net.Crear JSON con .net

Así que, básicamente, supusimos que .net proporcionaría algún tipo de envoltorio para crear JSON, pero el desarrollador en cuestión creó la cadena a mano. Investigué un poco este tema y no pude encontrar nada, aunque creo que .net proporciona algo. :)

'current code  
Dim data As String 
data = "[hello, world]" 

En PHP haría lo siguiente (ext/json suponiendo que está disponible;):

<?php 
$json = array('hello', 'world'); 
$json = json_encode($json); 

También estoy interesado en lo que se utiliza para decodificar el JSON en una matriz/objeto estructura.

La ayuda es muy apreciada.

Respuesta

15

Hay un par de opciones propias y de terceros. Rick Strahl tiene una buena descripción. JSON.net es la opción de terceros más popular.

+1

Esto se ve bastante bien. Investigaré esto y te lo haré saber. ¡Gracias hasta ahora! (Lo siento, no me quedan votos en este momento. Independientemente de lo que elija, votaré por esto mañana). – Till

10

Ver Is there a built in way in .Net AJAX to manually serialize an object to a JSON string?

es decir, en .NET 2.0,

Dim yourData As String() = { "Hello", "World" } 
Dim jsonSerialiser As New System.Web.Script.Serialization.JavaScriptSerializer 
Dim jsonString as String = jsonSerialiser.Serialize(yourData) 

En .NET 3.5, los envía al blog de Rick Strahl, mencionado anteriormente

+0

Vi esto, aunque en realidad no responde mi pregunta. O tal vez no lo entiendo – Till

+0

Gracias por extender su respuesta. – Till

7

Json.Net es un fácil usa la biblioteca con algunas características geniales.

+0

¡Lo probé y funciona perfectamente! Gracias –

2

Estoy con Wayne - JSON.net funciona bien. Lo bueno es que funciona bien sin curva de aprendizaje.

3

JavaScriptSerializer es muy directo.

Person person = new Person(); 

JavaScriptSerializer serializer = new JavaScriptSerializer(); 
String json = serializer.Serialize(person); 
Cuestiones relacionadas