LINQ to JSON

James has published a first beta of LINQ to JSON support in his Json.NET library. It looks very similar to my LINQ support in an internal build of Ajax.NET Professional which never has been released.

 

List<Post> posts = GetPosts(); JObject rss = new JObject( new JProperty("channel", new JObject( new JProperty("title", "James Newton-King"), new JProperty("link", "http://james.newtonking.com"), new JProperty("description", "James Newton-King's blog."), new JProperty("item", new JArray( from p in posts orderby p.Title select new JObject( new JProperty("title", p.Title), new JProperty("description", p.Description), new JProperty("link", p.Link), new JProperty("category", new JArray( from c in p.Categories select new JValue(c)))))))));

The C# example above will generate following JSON output:

{ "channel": { "title": "James Newton-King", "link": "http://james.newtonking.com", "description": "James Newton-King's blog.", "item": [ { "title": "Json.NET 1.3 + New license + Now on CodePlex", "description": "Annoucing the release of Json.NET 1.3,...", "link": "http://james.newtonking.com/projects/json-net.aspx", "category": [ "Json.NET", "CodePlex" ] }, { "title": "LINQ to JSON beta", "description": "Annoucing LINQ to JSON", "link": "http://james.newtonking.com/projects/json-net.aspx", "category": [ "Json.NET", "LINQ" ] } ] } }
Published Tuesday, February 12, 2008 8:30 PM by Michael Schwarz

Comments

# re: LINQ to JSON

Friday, February 15, 2008 1:17 AM by Matthew A. Raymer

Been really interested in this since I started seeing the blog chatter about LINQ.  Probably something I'll be investing time in for the near future.  Know you do not work with MySQL, but have you happen to have seen the user function library in MySQL that generates JSON for queries?

www.mysqludf.org/.../index.php

# re: LINQ to JSON

Monday, March 17, 2008 11:03 AM by Paymon

Really nice syntax!

almost Xml in C#, It's like speaking Chinese in English!

I love to see how language ideas are adopted in each other!