MVC扩展方法

时间:2009-03-17 10:36:25

标签: c# model-view-controller selectlist

我正在尝试编写一个简单的扩展方法,它允许我按文本而不是值选择MVC SelectList中的项目。

这是我提出的,但是虽然在debuging时将项目设置为选中,但返回的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 个答案:

答案 0 :(得分:2)

尝试在文本上选择项目而不是值

是不明智的

无论如何,您似乎有多个项目满足您的if语句

要确保只选择一个项目,您可以在遇到条件时休息一下 像这样:

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

欢呼声