vb.net绑定了查询到了数据,前台怎么获取到我查询的数据

img

img


我现在后台查到了数据,但是我想让他先是在html中的td里,要怎么做,求大神

你好,
首先针对你这个想要在table 中显示数据的问题,有一个很简单的办法, 写一个服务器控件在td 里面, 后台直接将数据赋值给这个text 就可以了.像这样:

 <td><asp:Label ID="Label1" runat="server" Text=""></asp:Label></td>

 Dim sql As String = "select * from Name"
        Dim con As SqlConnection = New SqlConnection("Data Source=(localdb)\MSSQLLocalDB;Integrated Security=true;Initial Catalog=mydb")
        Dim dt As DataTable = New DataTable()
        con.Open()
        Dim cmd As SqlCommand = New SqlCommand(sql, con)
        Dim dr As SqlDataReader = cmd.ExecuteReader()
        While dr.Read()
            Label1.Text += dr("Id").ToString()
        End While

但是,你这个数据肯定是有多行的,所以我觉得你用table的话其实不是很合适. 我建议你用 repeater. 它是一个数据控件,可以绑定重复项的. 你只要在后台绑定数据就可以了. 前台的话用Eval().
参考这个:

 <asp:Repeater ID="RepeatInformation" runat="server">  
            <HeaderTemplate>  
                <table class="tblcolor">  
                    <tr>  
                        <b>  
                            <td>  
                                Roll No  
                            </td>  
                            <td>  
                                Student Name  
                            </td>  
                            <td>  
                                Total Fees  
                            </td>  
                        </b>  
                    </tr>  
            </HeaderTemplate>  
            <ItemTemplate>  
                <tr class="tblrowcolor">  
                    <td>  
                        <%#DataBinder.Eval(Container,"DataItem.RollNo")%>  
                    </td>  
                    <td>  
                        <%#DataBinder.Eval(Container,"DataItem.Name")%>  
                    </td>  
                    <td>  
                        <%#DataBinder.Eval(Container,"DataItem.Fees")%>  
                    </td>  
                </tr>  
            </ItemTemplate>  
            <SeparatorTemplate>  
                <tr>  
                    <td>  
                        <hr />  
                    </td>  
                    <td>  
                        <hr />  
                    </td>  
                    <td>  
                        <hr />  
                    </td>  
                </tr>  
            </SeparatorTemplate>  
            <AlternatingItemTemplate>  
                <tr>  
                    <td>  
                        <%#DataBinder.Eval(Container,"DataItem.RollNo")%>  
                    </td>  
                    <td>  
                        <%#DataBinder.Eval(Container,"DataItem.Name")%>  
                    </td>  
                    <td>  
                        <%#DataBinder.Eval(Container,"DataItem.Fees")%>  
                    </td>  
                </tr>  
            </AlternatingItemTemplate>  
            <SeparatorTemplate>  
                <tr>  
                    <td>  
                        <hr />  
                    </td>  
                    <td>  
                        <hr />  
                    </td>  
                    <td>  
                        <hr />  
                    </td>  
                </tr>  
            </SeparatorTemplate>  
            <FooterTemplate>  
                <tr>  
                    <td>  
                        School Records displayed  
                    </td>  
                </tr>  
                </table>  
            </FooterTemplate>  
        </asp:Repeater>  

后台绑定数据:

    Private con As SqlConnection
    Private cmd As SqlCommand = New SqlCommand()
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
        con = New SqlConnection(ConfigurationManager.ConnectionStrings("constr").ConnectionString)
        cmd.Connection = con
        cmd.CommandText = "select * from student"
        con.Open()
        RepeatInformation.DataSource = cmd.ExecuteReader()
        RepeatInformation.DataBind()
        con.Close()
    End Sub

首先要用到数据显示控件,翻翻书吧,然后用eval绑定
https://www.cnblogs.com/Mr_JinRui/archive/2010/07/06/1772129.html
与数据库有关的数据绑定表达式的常用方法?

1,<%#DataBind.Eval(Container.DataItem,"字段名")%>
<%#DataBind.Eval(Container.DataItem,"字段名","{0:c}") %>
还有2种不常用的:
<%# DataBinder.Eval(Container,"DataItem.字段名")%>
<%# DataBinder.Eval(Container,"DataItem.字段名",{0:c})%>
Container.DataItem相当于数据库中某个表中的一行记录,而一行可以有很多列。
最后一个参数和 String.Format的形式一样。例如c代表货币,p代表百分号,d代表短日期格式显示,f代表浮点数现实,f3代表小数点后三为,一次类推。

     使用三目运算符?:的例子:

<%# DataBinder.Eval(Container.DataItem, "字段 名").ToString().Trim().Length>16?DataBinder.Eval(Container.DataItem, "字段 名").ToString().Trim().Substring(0,16):DataBinder.Eval(Container.DataItem, "字段名").ToString().Trim() %>

2,<%#Eval("字段名")%>
<%#Eval("字段名","{0:c}")%>
.NET 2.0新出现的一个方法。和DataBind.Eval()等价。
最后一个参数和 String.Format的形式一样。例如c代表货币,p代表百分号,d代表短日期格式显示,f代表浮点数现实,f3代表小数点后三位,一次类推。

 使用三目运算符的例子:

<%#(Eval("性别")).ToString() =="True"?"男":"女"%>
性别字段类型为:是/否(Access),bit(sql server)
使用方法调用的例子:
<%# GetUserPhoto(Eval("PhotoPath")) %>
GetUserPhoto()的定义: