Assume I had a Person object defined like below (note: I'm
using the new automatic properties feature to implement it):
Figure 1

I'd like to then be able to initialize a
collection of Person objects and programmatically retrieve a JSON string
representation of them by just calling a ToJSON() extension method on it like
below:
Figure 2

This would work just like the built-in ToString()
method on the Object class in .NET today - except that it would generate a
JSON-format representation of the collection that I could use for AJAX
scenarios on the client:
Figure 3

Note: Clicking on the hour-glass in the debugger above
allows us to bring up the Text Visualizer in VS to see a clean version of the
JSON serialization:
Figure 4

This string format could then be used within JavaScript on
the client to instantiate an appropriate JavaScript object that represents my
collection (note: ASP.NET AJAX has a built-in JavaScript library to support this).