public ActionResult FilterTown(string provinceIdString, string municipalityIdString, string localMunicipalityIdString)
        {
            var townModel = new TownModel();
            var townsList = townModel.GetListOfTowns();

            int provinceId;

            if (int.TryParse(provinceIdString, out provinceId))
            {
                townsList.RemoveAll(x => !x.Local_Municipality.District.Province_Id.Equals(provinceId));
            }

            int municipalityId;

            if (int.TryParse(municipalityIdString, out municipalityId))
            {
                townsList.RemoveAll(x => !x.Local_Municipality.District_Municipality_Id.Equals(municipalityId));
            }

            int localMunicipalityId;

            if (int.TryParse(localMunicipalityIdString, out localMunicipalityId))
            {
                townsList.RemoveAll(x => !x.Local_Municipality_Id.Equals(localMunicipalityId));
            }

            var result = (from x in townsList
                          select new
            {
                id = x.Town_Id,
                name = x.Description
            }).ToList();

            return(Json(result, JsonRequestBehavior.AllowGet));
        }
        /// <summary>
        /// Get list of towns
        /// filter by Local municipality
        /// </summary>
        /// <param name="localMunicipalityId"></param>
        /// <returns></returns>

        public ActionResult FilterFromLocalMunicipalityAjax(string localMunicipalityId)
        {
            if (String.IsNullOrEmpty(localMunicipalityId))
            {
                localMunicipalityId = "-1";
            }

            var townModel = new TownModel();
            var townsList = townModel.GetListOfTowns(int.Parse(localMunicipalityId));

            var result = (from x in townsList
                          select new
            {
                id = x.Town_Id,
                name = x.Description
            }).ToList();

            return(Json(result, JsonRequestBehavior.AllowGet));
        }