使用“示例名称|示例编号”填充DataTextField

时间:2014-01-07 19:48:12

标签: c# asp.net sql datatextfield

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

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

customerselect.DataTextField = "NAME+ ' | ' +NUMBER";

我需要在DataTextField中显示:

Example Name | 123456

我收到了一个错误:

  

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

3 个答案:

答案 0 :(得分:2)

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属性的其他信息,请访问:http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.listcontrol.datatextfield%28v=vs.110%29.aspx

答案 1 :(得分:1)

尝试:

customerselect.DataTextField = string.Format("{0}+ | +{1}", Name, Number);

答案 2 :(得分:0)

为您的函数结果添加别名。换句话说,改变这个:

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

到此:

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