将业务对象绑定到ASP.NET DataList

时间:2012-03-29 16:51:26

标签: asp.net c#-4.0 data-binding reflection

我有一个带有Dictionary<string, Contact>字段的业务对象,我希望使用反射绑定到ASP.NET DataListItemTemplate的{​​{1}}定义了四个DataList控件。其中三个与TextBox中当前ID对象的属性具有相同的Contact。第四个Dictionary<string, Contact>应绑定到TextBox密钥。

我已经编写了代码来删除单个string对象,关键字段,Contact控件以及要绑定的属性/模板控件的名称。我遇到的麻烦是指定每个控件的值。

我有一个带有以下签名的方法:

DataList

我需要做些什么来将这一切联系在一起?

1 个答案:

答案 0 :(得分:0)

您应该能够将业务对象绑定到DataList。在这种情况下,我认为你想要绑定到字典的ValueCollection

DataList1.DataSource = dict.Values;

执行此操作后,您应该能够使用正常的数据绑定语法:

<ItemTemplate>
    <%# Eval("SomeProperty") %>
</ItemTemplate>

如果您正在寻找其他选项,您也可以使用ObjectDataSource控件。请查看以下链接了解更多详情。

Binding DataList to ObjectDataSource