如何将类数组的数据对象添加到下拉列表中?

时间:2010-10-12 19:07:59

标签: c# asp.net data-binding

我有一个类型为Person的数组

Person[] Traders = GetTraders();

Person类包含数据对象,如名字,姓氏等。

我想将所有名字添加到下拉列表中。我怎样才能做到这一点?我尝试这样做,但它不会得到名字:

ddl_traders.DataSource = traders;

修改

Person有以下字符串字段:FirstName,LastName,login。

我希望dropdownlist显示FirstName,但该值必须是登录名。我很确定这是可能的,虽然我不知道如何做到这一点。有什么建议吗?

2 个答案:

答案 0 :(得分:1)

一种方式:

ddl_traders.DataSource = GetTraders().OfType<Person>().Select<Person, string>(p => p.FirstName).ToList<string>();

这取决于具有名为FirstName的字符串字段的人。

答案 1 :(得分:1)

这可能不是最好的方法,但您可以指定要显示的字段,如:

    ddl_traders.DateSource = traders;
    ddl_traders.DataTextField = "FirstName";
    ddl_traders.DateValueField= "login";
    ddl_traders.DataBind();

这允许您绑定完整的Person对象,但只显示名称,并将登录名保留为值。