DropDownList + 领域模型,这个问题该如何整会比较好呢?
ASP.NET中,下拉列表DropDownList或者RadioButtonList,这样的控件,绑定ListItem这样的项。MSDN中常见的两种做法是:
1、DataSource = 某个DataTable并制定DataTextField和DataValueField来指定字段。
2、DataSourceID = 某个比如ObjectDataSource,但是要引入一个ObjectDataSource等数据源控件。
现在通常是得到一个领域集合,形如:IList<BaseClass>的数据源,我想要针对IList<BaseClass>的选项绑定DropDownList的Text和Value的通常做易做图是什么样呢?
假设一个类
public class SubClass
{
string item;
public string Item
{
set
{
item = value;
}
get
{
return item;
}
}
string itemValue;
public string ItemValue
{
set
{
itemValue = value;
}
get
{
return itemValue;
}
}
}
当下部为一个string这样的类型的时候,可以指定为:
this.DropDownList1.DataSource = dataSource;
this.DropDownList1.DataTextField = "Item";
this.DropDownList1.DataValueField = "ItemValue";
this.DropDownList1.DataBind();
这样也是可以的……
但是如果是:
public class BaseClass
{
SubClass item;
public SubClass Item
{
set
{
item = value;
}
get
{
return item;
}
}
}
public class SubClass
{
string item;
public string Item
{
set
{
item = value;
}
get
{
return item;
}
}
string itemValue;
public string ItemValue
{
set
{
itemValue = value;
}
get
{
return itemValue;
}
}
}
而DataSource为IList<BaseClass>的话,我该如何拯救这个“被陷入深渊”的项呢?
或者说面对这个问题大家是否有更好的处理方式,或者需要我改变什么观念什么的……?
补充:.NET技术 , ASP.NET