He escrito un servicio web simple que consigue lista de productos en JSONText que es objeto de cadena de código de servicioASP.NET JSON servicio web Respuesta formato
Web está por debajo
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.Services;
using System.Web.Script.Services;
using System.Runtime.Serialization.Json;
using System.IO;
using System.Text;
/// <summary>
/// Summary description for JsonWebService
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.Web.Script.Services.ScriptService]
public class JsonWebService : System.Web.Services.WebService
{
public JsonWebService() {
//Uncomment the following line if using designed components
//InitializeComponent();
}
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public string GetProductsJson(string prefix)
{
List<Product> products = new List<Product>();
if (prefix.Trim().Equals(string.Empty, StringComparison.OrdinalIgnoreCase))
{
products = ProductFacade.GetAllProducts();
}
else
{
products = ProductFacade.GetProducts(prefix);
}
//yourobject is your actula object (may be collection) you want to serialize to json
DataContractJsonSerializer serializer = new DataContractJsonSerializer(products.GetType());
//create a memory stream
MemoryStream ms = new MemoryStream();
//serialize the object to memory stream
serializer.WriteObject(ms, products);
//convert the serizlized object to string
string jsonString = Encoding.Default.GetString(ms.ToArray());
//close the memory stream
ms.Close();
return jsonString;
}
}
ahora dame resoponse como abajo:
{"d": "[{\" ProductID \ ": 1, \" ProductName \ ": \" Producto 1 \ "}, {\" ProductID \ ": 2, \" ProductName \ ": \" Producto 2 \ "}, {\" ProductID \ ": 3, \" ProductName \ ": \" Producto 3 \ "}, {\" ProductID \ ": 4, \" ProductName \ ": \ "Producto 4 \"}, {\ "ProductID \": 5, \ "ProductName \": \ "Producto 5 \"}, {\ "ProductID \": 6, \ "ProductName \": \ "Producto 6 \"}, {\ "ProductID \ ": 7, \" ProductName \ ": \" Producto 7 \ "}, {\" ProductID \ ": 8, \" ProductName \ ": \" Producto 8 \ "}, {\" ProductID \ ": 9 , \ "ProductName \": \ "Producto 9 \"}, {\ "ProductID \": 10, \ "ProductName \": \ "Producto 10 \"}] "}
Pero estoy buscando debajo pone
[{"ProductID": 1, "ProductName": "Producto 1"}, {"ProductID": 2, "ProductName": "Producto 2"}, {"ProductID": 3, "ProductName": "Producto 3"}, {"ProductID": 4, "ProductName": "Producto 4"}, {"ProductID": 5, "ProductName": "Producto 5"}, {"ProductID": 6 , "ProductName": "Product 6"}, {"ProductID": 7, "ProductName": "Product 7"}, {"ProductID": 8, "ProductName": "Product 8"}, {"ProductID": 9, "ProductName": "P roducto 9 "}, {" ProductID ": 10," ProductName ":" 10" Producto}]
puede alguien decirme lo que es un problema real
Gracias
Gracias ewrankin por su amable respuesta pero mi problema es que tengo que ir con el framework asp.net 2.0 así que por favor sugiéranme cómo puedo lograrlo. por favor, si usted tiene alguna otra opción que por favor dígame – Hiscal
Lo siento, supongo que no entiendo su comentario. ¿Quieres ir a ASP.NET 2.0? Debido a que según la respuesta JSON que recibe, está utilizando ASP.NET 3.5 debido a la "d" adicional que se está agregando. ¿O está preguntando cómo trabajar con la "d" en la respuesta que está recibiendo? – ewrankin
He trabajado con tu sugerencia pero aún así me da el mismo resultado con "\" no deseado y no me da salida como {"d": "[{" ProductID ": 1," ProductName ":" Product 1 " }, {"ProductID": 2, "ProductName": "Product 2"}, {"ProductID": 3, "ProductName": "Product 3"}, {"ProductID": 4, "ProductName": "Product 4 "}, {" ProductID ": 5," ProductName ":" Producto 5 "}, {" ProductID ": 6," ProductName ":" Producto 6 "}, {" ProductID ": 7," ProductName ":" Producto 7 "}, {" ProductID ": 8," ProductName ":" Producto 8 "}, {" ProductID ": 9," ProductName ":" Producto 9 "}, {" ProductID ": 10," ProductName ":" Producto 10 "}]"} – Hiscal