[英]Concatenate two DataSet Column in dropdownlist DataTextField while Binding
I have dropdownlist that i have to bind from back end. 我有下拉列表,我必须从后端绑定。 I am using DataSet to bind the Data but need concatenate two column data in datatextfield of Dropdownlist. 我使用DataSet绑定数据,但需要在Dropdownlist的datatextfield中连接两个列数据。
Here is my Code. 这是我的代码。
string sqlGetClass = "select * from tbl_studentClass";
SqlCommand cmdGetClass = new SqlCommand(sqlGetClass, conn);
conn.Open();
SqlDataAdapter da = new SqlDataAdapter(cmdGetClass);
DataSet ds = new DataSet();
da.Fill(ds);
ddlClass.DataSource = ds;
ddlClass.DataTextField = "brachName"+"-"+"classYear";
ddlClass.DataValueField = "pk_classID";
ddlClass.DataBind();
ddlClass.Items.Insert(0, new ListItem("--SELECT--", ""));
conn.Close();
if I use a single column the dropdownlist is binding fine but when concatenate them it is giving error DataBinding: 'System.Data.DataRowView' does not contain a property with the name 'brachName-classYear'. 如果我使用单个列,则dropdownlist绑定正常但在连接时它会给出错误DataBinding:'System.Data.DataRowView'不包含名为'brachName-classYear'的属性。 whene binding the Data. 谁绑定数据。
Code running fine is: 代码运行正常是:
string sqlGetClass = "select * from tbl_studentClass";
SqlCommand cmdGetClass = new SqlCommand(sqlGetClass, conn);
conn.Open();
SqlDataAdapter da = new SqlDataAdapter(cmdGetClass);
DataSet ds = new DataSet();
da.Fill(ds);
ddlClass.DataSource = ds;
ddlClass.DataTextField = "brachName";
ddlClass.DataValueField = "pk_classID";
ddlClass.DataBind();
ddlClass.Items.Insert(0, new ListItem("--SELECT--", ""));
conn.Close();
But i need to concatenate branchName and class Like M.Sc-1st Year. 但我需要连接branchName和类,如M.Sc-1st Year。 Please Help. 请帮忙。 Thanks in advance. 提前致谢。
Your best option is to specify new column in your query, and then use it as a text field: 您最好的选择是在查询中指定新列,然后将其用作文本字段:
string sqlGetClass = "select [pk_classID], [brachName] + '-' + [classYear] as [classText] from tbl_studentClass";
...
ddlClass.DataTextField = "classText";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.