2014-10-18 4 views
0

У меня есть названия городов и номерные знаки. Номерные знаки начинается от 1 до 100.Как установить значения SelectList из базы данных

Я хочу, чтобы показать города из номерных знаков, как 32,54,88, 1,2,3,4,5 ... 100

номерного знака 32,54, 88 городов - это самые популярные города в моей стране, поэтому я хочу показать их в первую очередь.

Моя схема базы данных такова:

  • LicencePlateId = 32, CityName = "City1"
  • LicencePlateId = 54, CityName = "City2"
  • LicencePlateId = 88, CityName = "City3"
  • LicencePlateId = 1, CityName = "...."
  • LicencePlateId = 2, CityName = "...."
  • LicencePlateId = 3, CityName = "...."
  • LicencePlateId = 4, CityName = "...."

Я получаю все города из БД с этим кодом. У меня нет никаких проблем

List<CityVM> myCity= new List<CityVM>(); 
    myCity= CityBL.GetAllCities(); 

Чем я добавить города к SelectList

List<SelectListItem> cityList= new List<SelectListItem>(); 
    { 
     for (var i = 1; i < myCity.Count + 1; i++) 
     { 
     cityList.Add(new SelectListItem { Text = myCity.FirstOrDefault(k => k.Id == i).Ad.ToString(), Value = i.ToString() }); 
     } 

     cityList.Add(new SelectListItem { Text = "All Cities ", Value = "100" }); 
    } 

, но когда я смотрю на View часть выпадающего списка приходит так:

  • LicencePlate = 1, CityName = "....."
  • LicencePlate = 2, CityName = "....."
  • LicencePlate = 3, CityName = ". .... "

Как я могу начать с LicencePlateId = 32?

+1

Какое свойство в базе данных/модель данных указывает на то, как часто они используются? –

+0

CityId = номерной знак, который я имею в виду. Я изменю код. Спасибо. – ispanak

+1

Если вы хотите отсортировать по _most used 3 cities first_, должно быть свойство, которое указывает, как часто они используются –

ответ

1

Попробуйте добавить элементы в List<SelectListItem> в порядке, они находятся в List<CityVM> либо с помощью for или foreach:

for (int i = 0; i < myCity.Count - 1; i++) 
{ 
    cityList.Add(new SelectListItem 
       { 
        Text = myCity[i].Ad.ToString(), 
        Value = myCity[i].Id.ToString() 
       }); 
} 

cityList.Add(new SelectListItem { Text = "All Cities ", Value = "100" }); 
+0

большое спасибо. я не видел Value = myCity [i] .Id.ToString(). – ispanak

 Смежные вопросы

  • Нет связанных вопросов^_^