как вы можете сериализовать объект в JSON в .NET 2.0 с помощью С#?
Сериализовать JSON в .NET 2.0
Ответ 1
Вы можете использовать класс JavaScriptSerializer из ASP.NET Ajax 1.0, который совместим с .NET 2.0.
Ответ 2
Вы пробовали JSON.net?
Ответ 3
JSON.org содержит ссылки на ряд сериализаторов на нескольких языках, включая более половины десятка в С#. Вы должны найти тот, который соответствует вашим требованиям API и лицензированию, включая JSONsharp с лицензией LGPL и хорошо разработанным Json.NET.
Если то, что вы сериализуете, довольно просто, не все так сложно писать самостоятельно для определенной цели. Сайт JSON.org имеет синтаксис, и он очень прост.
Ответ 4
Вы пытаетесь создать RPC-сервер на стороне .NET? Если так, посмотрите на Jayrock (jayrock.berlios.de). Вы получаете исходный код, и он будет скомпилирован под 2.0.
Также установка RPC-сервера является оснасткой:
using Jayrock;
using Jayrock.JsonRpc;
using Jayrock.JsonRpc.Web;
using Jayrock.Json;
using Jayrock.Json.Conversion;
namespace myRPCService
{
[JsonRpcService("Service")]
public class Service : JsonRpcHandler
{
[JsonRpcMethod("call", Idempotent = true)]
public string call(string value)
{
JsonObject oJSON = JsonConvert.Import(typeof(JsonObject), value) as JsonObject;
...
return oJSON.ToString();
}
}
}
Ответ 5
Мне удалось выполнить резервное копирование Mono с использованием System.Json на С# 2.0 с несколькими незначительными изменениями.
Вам понадобятся 5 файлов из здесь и JavaScriptReader.cs из .
Обратите внимание, что с помощью System.Json вам придется вручную сериализовать любой не-примитивный тип данных. (см. здесь)
Ответ 6
Я использую ниже код для сообщения JSON и хорошо работаю для меня.
public static class JSONHelper
{
public static string ToJSON(this object obj)
{
JavaScriptSerializer serializer = new JavaScriptSerializer();
return serializer.Serialize(obj);
}
}
Вызов JSON-сериализатора в WCF.
[OperationContract]
[WebInvoke(Method = "POST", RequestFormat = WebMessageFormat.Json)]
public string LoadDetails()
{
LogDetails objSubLog = new LogDetails ();
List<LogDetails> lstLogdetails;
DAL objDAL = new DAL();
lstLogdetails = objDAL.GetLog("ALL", objSubLog);
return lstLogdetails.ToJSON();
}