MVC Отображение раскрывающегося списка, если объект имеет определенное значение свойства

У меня есть свойство FitToPlay, и оно содержит список игроков, которые не пострадали. Что я хочу сделать, так это создать раскрывающийся список для каждой позиции в команде и заполнить раскрывающийся список только игроками в списке подходящих для игры, у которых рассматриваемая позиция является либо их основной, либо вторичной позицией.

Я хочу знать, как я могу просто отображать определенные объекты с помощью помощника раскрывающегося списка html.

Спасибо заранее.

J


person JM1990    schedule 14.03.2013    source источник


Ответы (1)


Я думаю, вы хотели бы пройтись по каждой позиции, и внутри цикла пройтись по всем текущим игрокам FitToPlay, и если его первая или второстепенная позиция является текущей позицией в цикле, тогда вставьте его в нее.. в конце, если кто-то был вставлен, создайте выпадающий список

Так что вроде..

//Loop through all the positions
foreach (var position in Model.positions)
{
   //Create a list for each position 
   List<SelectListItem> playersInPosition = new List<SelectListItem>();
   //Only loop through players with the current position as either primary or secondary
   foreach(var player in Model.FitToPlay.Where(pl => pl.primary == position || pl.secondary == position))
   {
     //Put this player into the list
     playersInPosition.add(new SelectListItem { Text = player.name, Value = player.id});
   }
   //If at least one fits the criteria make a drop down list from it
   if(playersInPosition != null && playersInPosition.Count > 0)
   {
       @Html.DropDownList(position.name, playersInPosition);
   }
}
person krilovich    schedule 14.03.2013