public ActionResult GetCitys(CallbackRequestData request)
 {
     var filters = request.FilterOptions;
     List<City> citys = CityDataSource.CityDataSource.GetCitys().Skip(request.Page * request.PageSize).Take(request.PageSize).ToList();
     citys.ForEach(p => { if (p.Id % 2 == 0) { p.ZipCodes.Add(new CityZipCode() { Id = 1, CityZip = "627354" }); } });
     return CustomData(citys, CityDataSource.CityDataSource.GetCitys().Count);
 }
 public ActionResult GetZipList(CallbackRequestData request)
 {
     var zips = new List<CityZipCode>();
     zips.Add(new CityZipCode() { Id = 1, CityZip = "627354" });
     zips.Add(new CityZipCode() { Id = 2, CityZip = "627355" });
     zips.Add(new CityZipCode() { Id = 3, CityZip = "627356" });
     zips.Add(new CityZipCode() { Id = 4, CityZip = "627357" });
     for (int i = 5; i <= 500; i++)
     {
         zips.Add(new CityZipCode() { Id = i, CityZip = "62735" + i });
     }
     return Data(zips, request);
 }
 // GET: Grid
 public ActionResult AddUpdateGrid(CallbackRequestData request, List<City> toUpdateOrDelete, string mode)
 {
     if (mode == "A")
     {
         this.Citys.Insert(0, new City() { Id = Citys.Count > 0 ? Citys.Max(c => c.Id) + 1 : 1 });
     }
     if(toUpdateOrDelete != null)
     {
         foreach (City city in toUpdateOrDelete)
         {                    
             int index =this.Citys.FindIndex(c => c.Id == city.Id);
             if (index > -1)
             {
                 this.Citys.RemoveAt(index);
                 this.Citys.Insert(index, city);
             }
         }
     }            
     List<City> citys = this.Citys.Where(c=>c.Status != "D").Skip((request.Page -  1)  * request.PageSize).Take(request.PageSize).ToList();
     citys.ForEach(p => { if (p.Id % 2 == 0) { p.ZipCodes.Add(new CityZipCode() { Id = 1, CityZip = "627354" }); } });
     return CustomData(citys, this.Citys.Where(c => c.Status != "D").Count());
 }
 public ActionResult GetCountries(CallbackRequestData request)
 {
     IEnumerable<Country> countries = CityDataSource.CityDataSource.GetCitys().Where(p => !string.IsNullOrEmpty(p.StateInfo.Name)).Select(p => p.StateInfo).Take(1000).Select(p => p.CountryInfo);
     return CustomData(countries, countries.Count());
 }
 public ActionResult GetStatesWithPaginationCode(CallbackRequestData request)
 {
     IEnumerable<string> states = CityDataSource.CityDataSource.GetCitys().Where(p => !string.IsNullOrEmpty(p.StateInfo.Name)).Select(p => p.StateInfo.Code);
     return Json(states.ToDataSourceResult(request));
 }
 public ActionResult GetStatesWithPagination(CallbackRequestData request)
 {
     IEnumerable<State> states = CityDataSource.CityDataSource.GetCitys().Where(p => !string.IsNullOrEmpty(p.StateInfo.Name)).Select(p => p.StateInfo);
     return Json(new { Data = states.Skip(request.Page * request.PageSize).Take(request.PageSize), Total = states.Count() }, JsonRequestBehavior.AllowGet);
 }
 public ActionResult NoRecords(CallbackRequestData request, List<City> toUpdateOrDelete, string mode)
 {
     return CustomData(new List<City>(), 0);
 }