コード例 #1
0
        private void PrepareSelectList(int?stateId = null, int?cityId = null)
        {
            var states = StateFactory.GetAllStates();

            List <SelectListItem> stateList = new List <SelectListItem>();

            foreach (var item in states)
            {
                if (stateId.HasValue)
                {
                    if (stateId == item.Id)
                    {
                        stateList.Add(new SelectListItem {
                            Value = item.Id.ToString(), Text = item.Title, Selected = true
                        });
                    }
                    else
                    {
                        stateList.Add(new SelectListItem {
                            Value = item.Id.ToString(), Text = item.Title
                        });
                    }
                }
                else
                {
                    stateList.Add(new SelectListItem {
                        Value = item.Id.ToString(), Text = item.Title
                    });
                }
            }
            ViewData["States"] = stateList;

            if (cityId.HasValue)
            {
                var cities = StateFactory.GetCitiesByStateId(stateId.Value);

                List <SelectListItem> cityList = new List <SelectListItem>();
                foreach (var item in cities)
                {
                    if (cityId.HasValue)
                    {
                        if (cityId == item.Id)
                        {
                            stateList.Add(new SelectListItem {
                                Value = item.Id.ToString(), Text = item.Title, Selected = true
                            });
                        }
                        else
                        {
                            stateList.Add(new SelectListItem {
                                Value = item.Id.ToString(), Text = item.Title
                            });
                        }
                    }
                    else
                    {
                        stateList.Add(new SelectListItem {
                            Value = item.Id.ToString(), Text = item.Title
                        });
                    }
                }
                ViewData["Cities"] = cityList;
            }
        }