Convert Json format Response from webservice

.net, c#, json, web-services

Solution

Infos are as

 public class ShowInfo
    {
        public int ShowID { get; set; }
        public string StartTime { get; set; }
    }
    public class NowShowing
    {
        public List<ShowInfo> ShowInfo { get; set; }
        public int MovieID { get; set; }
        public string Movie { get; set; }
        public string Screen { get; set; }
        public string MediaPath { get; set; }
    }

and

public List<NowShowing> NowShowingGetList(DateTime ShowDate)
    {            
        List<NowShowingInfo> objshowList = obj.NowShowingGetList(ShowDate);

        int movieID = 0;
        List<NowShowing> objShowingList = new List<NowShowing>();

        NowShowing obj2 = new NowShowing();
        ShowInfo objshowInfo = new ShowInfo();
        List<ShowInfo> objshowInfoList = new List<ShowInfo>();
        int count = 0;
        string Screen="";
        foreach (NowShowingInfo objs in objshowList)
        {
            if (movieID != objs.MovieID )
            {
                if (count != 0)
                {
                    obj2.ShowInfo = objshowInfoList;
                    objshowInfoList = new List<ShowInfo>();
                    objShowingList.Add(obj2);
                    count = 0;
                }
                obj2 = new NowShowing();
                obj2.MovieID = objs.MovieID;
                obj2.Movie = objs.Movie;
                obj2.Screen = objs.Screen;
                obj2.MediaPath = objs.MediaPath;

                if (count == 0)
                {
                    objshowInfo = new ShowInfo();
                    objshowInfo.ShowID = objs.ShowID;
                    objshowInfo.StartTime = objs.StartTime;
                    objshowInfoList.Add(objshowInfo);
                }

            }
            else
            {
                objshowInfo = new ShowInfo();
                objshowInfo.ShowID = objs.ShowID;
                objshowInfo.StartTime = objs.StartTime;
                objshowInfoList.Add(objshowInfo);
            }
            movieID = objs.MovieID;
            Screen = objs.Screen;
            count++;
        }

        obj2.ShowInfo = objshowInfoList;
        objShowingList.Add(obj2);
        return objShowingList;
    }

Problem

my web-service return json data as given below but i wanted is like as in 2nd CodeSnipts. my web-service and class as given below. ``` { "ShowID": 10107, "StartTime": "3:00 PM", "MovieID": 13, "Movie": "Bhaag Milkha Bhaag ", "Screen": "CDC SCreen2", "MediaPath": "bmb1_568962.jpg" },{ "ShowID": 115, "StartTime": "6:00 PM", "MovieID": 13, "Movie": "Bhaag Milkha Bhaag ", "Screen": "CDC SCreen2", "MediaPath": "bmb1_568962.jpg" },{ "ShowID": 110, "StartTime": "9:00 PM", "MovieID": 13, "Movie": "Bhaag Milkha Bhaag ", "Screen": "CDC SCreen2", "MediaPath": "bmb1_568962.jpg" } ``` but i want as ``` { "MovieID": 13, "Movie": "Bhaag Milkha Bhaag ", "Screen": "CDC SCreen2", "MediaPath": "bmb1_568962.jpg", "ShowInfo": [ { "ShowID": 10107, "StartTime": "3:00 PM" }, { "ShowID": 115, "StartTime": "6:00 PM" }, { "ShowID": 110, "StartTime": "9:00 PM" } ] } ``` my c# code for Webservice as ``` [WebMethod] public string NowShowingGetList(DateTime ShowDate) { HomeController obj = new HomeController(); JavaScriptSerializer js = new JavaScriptSerializer(); string retJSON = js.Serialize(obj.NowShowingGetList(ShowDate)); return retJSON; } ``` class as ``` public class NowShowingInfo { public int ShowID { get; set; } public string StartTime { get; set; } public int MovieID { get; set; } public string Movie { get; set; } public string Screen { get; set; } public string MediaPath { get; set; } } ``` here `obj.NowShowingGetList(ShowDate)` return List Thankyou in advance.

Original source