Pisałem jedną prostą usługę internetową, która uzyskać listę produktów w JSONText który jest przedmiotem ciągJSON ASP.NET Web Service Response Format
Web Service jest kod poniżej
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;
}
}
teraz daj mi resoponse jak poniżej:
{"d": "[{\" ID produktu \ ": 1, \" Nazwa produktu \ ": \" Produkt 1 \ "}, {\" Identyfikator produktu \ ": 2, \" Nazwa produktu \ ": \" Produkt 2 \ "}, {\" ID produktu \ ": 3, \" Nazwa produktu \ ": \" Produkt 3 \ "}, {\" ID produktu \ ": 4, \" Nazwa produktu \ ": \ "Produkt 4 \"}, {\ "ID produktu \": 5, \ "Nazwa produktu \": \ "Produkt 5 \"}, {\ "ID produktu \": 6, \ "Nazwa produktu \": \ "Produkt 6 \"}, {\ "ID produktu" \ ": 7, \" NazwaProduktu \ ": \" Produkt 7 \ "}, {\" Identyfikator produktu \ ": 8, \" NazwaProduktu \ ": \" Produkt 8 \ "}, {\" Identyfikator produktu \ ": 9 , \ "ProductName \": \ "Product 9 \"}, {\ "ProductID \": 10, \ "ProductName \": \ "Product 10 \"}] "}
Ale szukam poniżej umieścić
[{"ProductID": 1, "ProductName": "Product 1"}, {"ProductID": 2, "ProductName": "Product 2"}, {"ProductID": 3, "ProductName": "Product 3"}, {"ProductID": 4, "ProductName": "Product 4"}, {"ProductID": 5, "ProductName": "Product 5"}, {"ProductID": 6 , "ProductName": "Product 6"}, {"ProductID": 7, "ProductName": "Product 7"}, {"ProductID": 8, "ProductName": "Product 8"}, {"ProductID": 9, "ProductName": "P roduct 9 "}, {" ProductID ": 10," ProductName ":" 10" Produkt}]
może ktoś mi powiedzieć jaki jest rzeczywisty problem
Dzięki
Dzięki ewrankin dla ciebie rodzaju odpowiedź ale mój problem jest muszę iść z asp.net 2.0 ramy, więc proszę o sugestię, jak mogę to osiągnąć. proszę, jeśli masz jakąś inną opcję, proszę powiedz mi – Hiscal
Przepraszam, myślę, że nie rozumiem twojego komentarza. Czy chcesz przejść do ASP.NET 2.0? Ponieważ na podstawie otrzymanej odpowiedzi JSON używasz ASP.NET 3.5 ze względu na dodatkowe "d", które jest dodawane. Czy też pytasz, jak pracować z "d" w odpowiedzi, którą otrzymujesz. – ewrankin
Mam pracę z twoją sugestią, ale nadal daje mi to samo out z niechcianym "\" i nie daje mi wyników takich jak {"d": "[{" ProductID ": 1," ProductName ":" Produkt 1 " }, {"ProductID": 2, "ProductName": "Product 2"}, {"ProductID": 3, "ProductName": "Product 3"}, {"ProductID": 4, "ProductName": "Produkt 4 "}, {" ProductID ": 5," ProductName ":" Product 5 "}, {" ProductID ": 6," ProductName ":" Product 6 "}, {" ProductID ": 7," ProductName ":" Produkt 7 "}, {" ProductID ": 8," ProductName ":" Product 8 "}, {" ProductID ": 9," ProductName ":" Product 9 "}, {" ProductID ": 10," ProductName ":" Produkt 10 "}]"} – Hiscal