C# 用“填充数据文本字段”;示例名称“示例编号”;

C# 用“填充数据文本字段”;示例名称“示例编号”;,c#,asp.net,sql,datatextfield,C#,Asp.net,Sql,Datatextfield,我有一个SQL select语句,并使用结果将其绑定到asp下拉列表 String strQuery ="SELECT RTRIM(NAME), NUMBER . . ." customerselect.DataTextField = "NAME+ ' | ' +NUMBER"; 我需要在DataTextField中显示: Example Name | 123456 我得到一个错误: “不包含名为'name+'|'+NUMBER'的属性。” 尝试: 为函数结果指定一个别名。换言之,改变这

我有一个SQL select语句,并使用结果将其绑定到asp下拉列表

String strQuery ="SELECT RTRIM(NAME), NUMBER . . ." 

customerselect.DataTextField = "NAME+ ' | ' +NUMBER";
我需要在DataTextField中显示:

Example Name | 123456
我得到一个错误:

“不包含名为'name+'|'+NUMBER'的属性。”

尝试:


为函数结果指定一个别名。换言之,改变这一点:

String strQuery ="SELECT RTRIM(NAME), NUMBER . . ." 
为此:

String strQuery ="SELECT RTRIM(NAME) as name, NUMBER . . ." 

DataTextField
属性指定数据源中的哪个字段用作下拉列表的文本标签,而不是实际的文本字符串本身。因此,如果希望下拉列表具有该特定格式,可以尝试以下操作:

String strQuery = "SELECT RTRIM(NAME) + ' | ' +
    CAST(NUMBER AS VARCHAR(32)) AS Label, NUMBER AS Value . . .";

// Run the query and do the appropriate data binding here

customerselect.DataTextField = "Label";
有关DataTextField属性的其他信息可在此处找到:

String strQuery = "SELECT RTRIM(NAME) + ' | ' +
    CAST(NUMBER AS VARCHAR(32)) AS Label, NUMBER AS Value . . .";

// Run the query and do the appropriate data binding here

customerselect.DataTextField = "Label";