Хорошие библиотеки.NET для работы с данными JSON?

В настоящее время я пробую Json.NET, и это, кажется, работает хорошо.

Любые другие хорошие библиотеки JSON для.NET?

3 ответа

Решение

Jayrock работает хорошо и прозрачно превращает ваши объекты в и из объектов JSON, если у них есть открытый конструктор. Он также создает скрипт для вас, чтобы вы могли просто вызывать свой веб-сервис как класс Javascript.

Пример:

public class Person
{
  public string Name { get;set;}
  public int Age { get;set; }

  public Person() { }
}

public class MyService : JsonRpcHandler
{
   [JsonRpcMethod("getBob")]
   public Person GetBob()
   {
       return new Person() { Name="Bob",Age=20};
   }
}

И Javascript:

var service = new MyService();
var result = service.getBob();
alert(result.name); // JSON objects are camel-cased.

Существует JavascriptSerialiser, который используется asp.net mvc и asp.net ajax. Также есть DataContractJsonSerialiser, используемый WCF. Единственная проблема, с которой я столкнулся с JavascriptSerialiser - это то, что он использует забавный способ сериализации дат, который, я не думаю, будет разбираться в дате javascript. Но это легко решается с помощью этого фрагмента

    public double MilliTimeStamp()
    {
        DateTime d1 = new DateTime(1970, 1, 1);
        DateTime d2 = DateTime.UtcNow;
        TimeSpan ts = new TimeSpan(d2.Ticks - d1.Ticks);

        return ts.TotalMilliseconds;
    }

Класс JavaScriptSerializer из пространства имен System.Web.Script.Serialization обеспечивает хорошую поддержку сериализации / десериализации JSON.

Другие вопросы по тегам