2013-10-23 49 views
2

我对ASP.net MVC很新。我想在页面加载时用一个数据表绑定一个下拉列表。在webforms中,我曾经这样做:如何将数据表绑定到ASP.net MVC中的下拉列表?

dropdownname.datasource=dt; 
dropdownname.textfield="name"; 
dropdownname.valuefield="id"; 

name和id是数据表中的列名。我正在使用aspx视图引擎。请帮忙,

回答

3

你在找什么类似this

+0

正确..非常感谢你 –

+0

很高兴我能帮助先生, – Hilmi

1

在MVC中,您可以使用HtmlHelper DropDownListFor

假设你havea这样的视图模型:

public class UserModel 
{ 
    public string Name { get; set; } 

    // Some other properties.. 

    public int CountryId { get; set; } 

    public IEnumerable<SelectListItem> Countries { get; set; } 
} 

可以生成与助手从下拉列表:

@Html.DropDownListFor(m => m.CountryId, Model.Countries) 

您必须填充在控制器的国家名单:

public ActionResult Edit(int userId) 
{ 
    var model = new UserModel(); 
    // get data from db. 

    // Populate countries list. 
    model.Countries = db.Countries.Select(c => new SelectListItem 
                { 
                 Value = c.Id, 
                 Text = c.Name 
                }).ToList(); 
} 

如果您将此下拉列表包装在表单中,它会将选定的国家/地区ID到控制器。

互联网上还有很多其他的例子。例如,尝试this one。另外,谷歌是你最好的朋友。

+0

@ Henk ..谢谢你..我会试试这个.. –

相关问题