0
我有一个列表视图数据源,它从表中获取数据,其中包含roleId,名字,姓氏,手机号码。 我有另一个表映射roleId与角色名称。如何在asp.net中进行listview数据源的自定义绑定?
在asp.net窗体中,我将数据源绑定到检索roleId,firstname和last name的表。我正在使用后端编程来做到这一点。
我的问题是,如何在listview中显示rolename而不是roleid。
我的后端代码是这样的
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
this.BindListView();
}
}
private void BindListView()
{
string constr = ConfigurationManager.ConnectionStrings["constr"].ConnectionString;
using (SqlConnection con = new SqlConnection(constr))
{
using (SqlCommand cmd = new SqlCommand())
{
cmd.CommandText = "SELECT roleId, fName, lname,mobilenumber Country FROM Admin";
cmd.Connection = con;
using (SqlDataAdapter sda = new SqlDataAdapter(cmd))
{
DataTable dt = new DataTable();
sda.Fill(dt);
lvCustomers.DataSource = dt;
lvCustomers.DataBind();
}
}
}
}
显然,这将返回整数角色ID,现在我想显示角色名称,而不是角色ID。我可以从角色表中获取角色名,角色表将角色名与角色名映射。
如果您允许使用LINQ。你可以尝试像这样var结果=在dt1.AsEnumerable()中的table1 dt2.AsEnumerable()on(int)table1 [“CustID”] equals(int)table2 [“CustID”] select new (int)table1 [“CustID”], ColX =(int)table1 [“ColX”], ColY =(int)table1 [“ColY”], ColZ =(int)table2 [“ColZ “] }; – Sailor