循环遍历HTML.DropDownList C#MVC中的列表

时间:2014-02-21 13:58:08

标签: c# asp.net asp.net-mvc

我一直在尝试遍历下拉列表中的列表,但它似乎没有工作。这是代码。

public class AnimalHandler
{
    public List<string> DogBreeds = new List<string>()
    {
       "Affenpinscher","Lhasa Apso","Shitzu", "Tibetan Terrier"
    }
}

然后在视图中

Project1.Models.AnimalHandler animal = new Project1.Models.AnimalHandler();

@Html.DropDownList("breed", new List<SelectListItem> { 
    foreach(var item in animal.DogBreeds)
    {
          new SelectListItem {Text="item", Value=""},
    }
    new SelectListItem {Text="Choose a Breed", Value=""}
})

我的想法背后是var项目将循环遍历DogBreeds中的所有项目,但似乎有一个错误,我无法弄清楚它可能是什么。

也许还有另一种 SIMPLE 的做法?感谢

2 个答案:

答案 0 :(得分:3)

这样的事情:

@Html.DropDownList("breed", new SelectList(animal.DogBreeds), "Choose a breed")

从评论中,设置选定的值:

@Html.DropDownList("breed", new SelectList(animal.DogBreeds, 
                                             "Great Dane"), 
                                              "Choose a breed")

从中获取所选值的地方归你所有。

答案 1 :(得分:0)

如下:

@Html.DropDownList(
    "breed", 
    animal.DogBreeds.Select(x => new SelectListItem { Text = x, Value = x }), 
    "Choose a Breed")