我是MVC框架的新手,无法弄清楚如何填充与数据库绑定的下拉列表。请在视图部分帮助我,因为我想使用以下代码在下拉列表中显示帐户名。
型号: -
[Table("account")]
public class Accounts
{
[Key]
public int acc_id { get; set; }
public string acc_name { get; set; }
// public SelectList AccountList { get; set; }
}
AccountsContext
public class AccountsContext:DbContext
{
public DbSet<Accounts> Account { get; set; }
// public SelectList Accounts { get;set;}
}
控制器: -
public ActionResult Group()
{
Accounts ak = new Accounts();
AccountsContext accountscontext = new AccountsContext();
List<Accounts> account = accountscontext.Account.ToList();
return View(account);
}
答案 0 :(得分:0)
您要将帐户列表作为模型发送到您的视图。没关系。但是,您将如何获得用户选择的价值?为此,您应该在服务器端拥有绑定到客户端所选项目的属性。
我建议使用ViewModel,它将帐户列表作为SelectListItem的集合(将在控制器中填充)和所选项目的另一个属性,然后将代码列表直接传递给您的视图应该传递新的viewModel并相应地绑定。
视图模型
public class AccountsViewModel
{
public int SelectedAccountId { get; set; }
public IEnumerable<SelectListItem> Accounts{ get; set; }
}
查看
@model AccountsViewModel
@Html.DropDownListFor(m => m.SelectedAccountId , Model.Accounts)