如何在ASP.Net中将DataReader与GridView一起使用

时间:2019-03-05 11:22:01

标签: asp.net gridview datareader

我正在尝试在GridView中使用DataReader
而不是使用DataAdapter。

但是我在aspx中遇到此错误:

  

不可使用的成员'IDataItemContainer.DataItem'不能像方法一样使用

我在这一行有错误:

<%# Container.DataItem("Data1")%>

我有此代码:

SqlConnection baglan=new SqlConnection("connectionstring text");
if (connection.State== ConnectionState.Closed)
{
    baglan.Open();
}
SqlCommand cmd = new SqlCommand("Select Data1 from Table1",baglan); 
SqlDataReader dr = cmd.ExecuteReader();
GridView1.DataSource = dr;
GridView1.DataBind();

<asp:GridView ID="GridView1" runat="server" AllowPaging="True" AutoGenerateColumns="False" CellPadding="4" DataKeyNames="ID" ForeColor="#333333" GridLines="None">
<AlternatingRowStyle BackColor="White" />
<Columns>

    <asp:TemplateField>
        <ItemTemplate>                            

            <%# Container.DataItem("Data1")%>

        </ItemTemplate>

        <ItemStyle HorizontalAlign="Left" Width="50px"></ItemStyle>
    </asp:TemplateField>
    </Columns>
</GridView>

我该如何解决?谢谢

1 个答案:

答案 0 :(得分:0)

您应该使用Eval。但是您发布的错误与使用DataReader

没有关系
<asp:TemplateField>
    <ItemTemplate>

        <%# Eval("Data1") %>

    </ItemTemplate>
</asp:TemplateField>