将多个字段绑定到ASP.NET中的列表框

时间:2009-07-17 14:29:29

标签: c# asp.net sql linq linq-to-sql

我是asp.net的新手,尤其是LINQ和SQL。

假设我有一个表“Employees”,其中包含“姓氏”,“名字”和“ID”字段。

我想将其绑定到列表框。我希望列表框显示其内容,如“$ LASTNAME,$ FIRSTNAME”,我希望每个项目的值为“ID”。

将name列绑定到列表框并相应地绑定值是微不足道的,但我无法弄清楚如何执行此操作..

提前致谢

2 个答案:

答案 0 :(得分:6)

您可以尝试这样的事情:

var datasource = from employee in employees 
                 select new
                 { 
                     Name = employee.lastName + ", " + employee.firstName, 
                     Id = employee.ID 
                 };

myListBox.DataSource = datasource;
myListBox.DataTextField = "Name";
myListBox.DataValueField = "Id";
myListBox.DataBind();

这会从您的员工表中构建一个匿名类型列表,以将您的列表框绑定到。

答案 1 :(得分:0)

不幸的是我对LINQ并不十分熟悉,但是如果你只想显示这样的名字,你可以在SQL查询中这样做:

SELECT LASTNAME + ', ' + FIRSTNAME AS FULLNAME, ID FROM TableName

然后将DataTextField的值设置为FULLNAME,将DataValueField的值设置为ID。