Метод расширения MVC - PullRequest
0 голосов
/ 17 марта 2009

Я пытаюсь написать простой метод расширения, который позволяет мне выбирать элемент в MVC SelectList по тексту, а не по значению.

Это то, что я придумал, но хотя элемент установлен как выбранный во время отладки, возвращенный SelectList имеет все свои элементы с selected = false.

Есть идеи?

 public static SelectList SelectByText(this SelectList list, string TextValue)
        {
            foreach (var item in list)
            {
                if (item.Text == TextValue)
                {
                    item.Selected = true;
                }
            }
            return list;
        }

1 Ответ

2 голосов
/ 14 апреля 2009

Не стоит пытаться выбрать элемент в его тексте вместо значения

в любом случае кажется, что у вас есть более одного элемента, который удовлетворяет вашему выражению if

, чтобы гарантировать, что будет выбран только один элемент, вы можете сделать перерыв, когда выполняете условие как это:

if(item.Text == TextValue)
{
  item.Selected = true;
  break;
}

ура

...