我对ASP.net MVC很新。我想在页面加载时用一个数据表绑定一个下拉列表。在webforms中,我曾经这样做:如何将数据表绑定到ASP.net MVC中的下拉列表?
dropdownname.datasource=dt;
dropdownname.textfield="name";
dropdownname.valuefield="id";
name和id是数据表中的列名。我正在使用aspx视图引擎。请帮忙,
我对ASP.net MVC很新。我想在页面加载时用一个数据表绑定一个下拉列表。在webforms中,我曾经这样做:如何将数据表绑定到ASP.net MVC中的下拉列表?
dropdownname.datasource=dt;
dropdownname.textfield="name";
dropdownname.valuefield="id";
name和id是数据表中的列名。我正在使用aspx视图引擎。请帮忙,
你在找什么类似this?
在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。另外,谷歌是你最好的朋友。
@ Henk ..谢谢你..我会试试这个.. –
正确..非常感谢你 –
很高兴我能帮助先生, – Hilmi