JSON stands for Javascript Object Notation and this is the new lightweight (then XML) standart for transferring data from one point to another over the network. Here you can find a sample web page codebehind to see usage in C#.
namespace Prototype
{
    public partial class Json : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            //create instance of the object
            SampleObject sampleObject = new SampleObject();
            //Json Serialize
            string json = Functions.ToJson<SampleObject>(sampleObject);
            Response.Write(string.Format("Json result: {0}<br/>",Server.HtmlEncode(json)));
            SampleObject deserializedSampleObject = Functions.FromJson<SampleObject>(json);//Json Deserialize
            Response.Write(string.Format("Object Result: {0}<br/>", deserializedSampleObject.ToString()));
        }
    }
    [Serializable]
    public class SampleObject
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public string Surname { get; set; }
        public string EMail { get; set; }
        public SampleObject()
        {
            this.Id = 2345;
            this.Name = "Ozan K.";
            this.Surname = "BAYRAM";
            this.EMail = "xyz@abc.com";
        }
        public override string ToString()
        {
            return string.Format("{0} {1}", Name, Surname);
        }
    }
}
Static methods in ‘Functions‘ class
/// <summary>
/// Serializes to Json string
/// Class must be serializable
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="ObjectToSerialize"></param>
/// <returns>json string</returns>
public static string ToJson<T>(object ObjectToSerialize)
{
    DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(T));
    MemoryStream ms = new MemoryStream();
    ser.WriteObject(ms, ObjectToSerialize);
    string json = Encoding.Default.GetString(ms.ToArray());
    ms.Close();
    return json;
}
/// <summary>
/// Deserializes json string to object
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="JsonString"></param>
/// <returns></returns>
public static T FromJson<T>(string JsonString)
{
    MemoryStream ms = new MemoryStream(Encoding.Unicode.GetBytes(JsonString));
    DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(T));
    T returnObject = (T)ser.ReadObject(ms);
    ms.Close();
    return returnObject;
}
Happy codings…
