用于处理JSON数据的优秀.NET库?

时间:2009-06-12 12:23:07

标签: javascript .net json

我目前正在尝试Json.NET,它似乎运作良好。

.NET的其他任何好的JSON库?

3 个答案:

答案 0 :(得分:5)

asp.net mvc和asp.net ajax使用了JavascriptSerialiser。此外,还有WCF使用的DataContractJsonSerialiser。我在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;
    }

答案 1 :(得分:4)

JavaScriptSerializer命名空间中的类System.Web.Script.Serialization提供了良好的JSON序列化/反序列化支持。

答案 2 :(得分:1)

Jayrock可以很好地透明地将对象转换为JSON对象,只要它们具有公共构造函数。它还为您创建脚本,因此您可以像使用Javascript类一样调用Web服务。

实施例

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.