Sql server 在MVC视图中填充下拉列表
我是MVC框架新手,不知道如何填充与数据库绑定的下拉列表。请在视图部分帮助我,因为我想使用以下代码在下拉列表中显示帐户名 型号:-Sql server 在MVC视图中填充下拉列表,sql-server,asp.net-mvc,Sql Server,Asp.net Mvc,我是MVC框架新手,不知道如何填充与数据库绑定的下拉列表。请在视图部分帮助我,因为我想使用以下代码在下拉列表中显示帐户名 型号:- [表(“账户”)] 公共类帐户 { [关键] 公共int acc_id{get;set;} 公共字符串acc_name{get;set;} //public SelectList AccountList{get;set;} } 帐户上下文 公共类帐户上下文:DbContext { 公共数据库集帐户{get;set;} //公共选择列表帐户{get;set;} }
[表(“账户”)]
公共类帐户
{
[关键]
公共int acc_id{get;set;}
公共字符串acc_name{get;set;}
//public SelectList AccountList{get;set;}
}
帐户上下文
公共类帐户上下文:DbContext
{
公共数据库集帐户{get;set;}
//公共选择列表帐户{get;set;}
}
控制器:-
public ActionResult组()
{
账户ak=新账户();
AccountsContext AccountsContext=新的AccountsContext();
列表帐户=accountscontext.account.ToList();
返回视图(帐户);
}
您正在将帐户列表作为模型发送到视图中。那很好。但是,您将如何获得用户将选择的值?为此,您应该在服务器端将一个属性绑定到客户端的选定项
我建议使用一个ViewModel,它将帐户列表作为SelectListItem(将在控制器中填充)的集合和所选项目的另一个属性,然后不将帐户列表直接传递给视图,而是传递新的ViewModel并相应绑定
视图模型
public class AccountsViewModel
{
public int SelectedAccountId { get; set; }
public IEnumerable<SelectListItem> Accounts{ get; set; }
}
您正在将帐户列表作为模型发送到视图中。那很好。但是,您将如何获得用户将选择的值?为此,您应该在服务器端将一个属性绑定到客户端的选定项 我建议使用一个ViewModel,它将帐户列表作为SelectListItem(将在控制器中填充)的集合和所选项目的另一个属性,然后不将帐户列表直接传递给视图,而是传递新的ViewModel并相应绑定 视图模型
public class AccountsViewModel
{
public int SelectedAccountId { get; set; }
public IEnumerable<SelectListItem> Accounts{ get; set; }
}
显示您的视图(您需要返回一个模型,该模型包含一个要绑定到的属性(例如)
int SelectedAccount
,以及一个选项属性(例如)IEnumerable AccountList
Stephen我在视图中使用了此代码。@model IEnumerablehat代码在您的视图中(您尚未显示视图)我没有为视图部分中的下拉列表编写任何代码。model IEnumerable@{ViewBag.Title=“Group”Layout=“~/Views/Shared/_Layout.cshtml”}这些是我的视图包含的首字母缩写。接下来我需要做的是在这里填充下拉列表。我建议阅读以了解基本内容Show your view(您需要返回一个模型,该模型包含一个要绑定到的属性(例如)int SelectedAccount
和一个选项属性(例如)IEnumerable AccountList
Stephen我在视图中使用了此代码。@model IEnumerablehat代码在您的视图中(您尚未显示视图)我还没有为视图部分中的下拉列表编写任何代码。model IEnumerable@{ViewBag.Title=“Group”Layout=“~/Views/Shared/_Layout.cshtml”}这些是我的视图包含的首字母缩写。接下来我需要做的是在这里填充下拉列表。我建议阅读以了解基本内容