数据源是datareader时的ItemType

时间:2013-08-12 17:18:26

标签: asp.net

我想在我的转发器中设置ItemType,但我的数据源是一个datareader,而不是一个类。

我该怎么做?

请帮帮我..谢谢

1 个答案:

答案 0 :(得分:0)

如果数据源是DataReader,则您的ItemType必须是DbDataRecord(实现IDataRecord)或更好,IDataRecord直接。

示例(假设您回到了Id列):

<asp:Repeater ID="rpt" ItemType="System.Data.IDataRecord" runat="server" >
    <ItemTemplate>
        <%# Item.GetInt32(Item.GetOrdinal("Id")) %>
    </ItemTemplate>
</asp:Repeater>

但我认为上述情况可能比简单地执行EvalCast更糟糕。绑定到自定义业务对象时,我可以看到这种好处,但是当您使用DataReader时却没有。