Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#自定义表分页问题_C#_Asp.net - Fatal编程技术网

C#自定义表分页问题

C#自定义表分页问题,c#,asp.net,C#,Asp.net,我制作了一个asp.net Web应用程序,它将MySQL数据库中的数据显示在一个html表中,这样一次只能看到20行,在一个按钮单击事件中可以看到接下来的20行,依此类推。但是,在第6次单击后,它将显示40行,并且该按钮无法再单击 HTML <div> <table id="datagrid" runat="server"> </table> <asp:Button OnClick="Unnamed_Click" runat="

我制作了一个asp.net Web应用程序,它将MySQL数据库中的数据显示在一个html表中,这样一次只能看到20行,在一个按钮单击事件中可以看到接下来的20行,依此类推。但是,在第6次单击后,它将显示40行,并且该按钮无法再单击

HTML

<div>
    <table id="datagrid" runat="server">
    </table>
    <asp:Button OnClick="Unnamed_Click" runat="server"/>
</div>

您正在错误地使用
MySQL.LIMIT
子句


这里的问题是什么?在第6次单击后,它将显示40行,而该按钮将无法再单击。相反,需要发生什么?每次单击按钮时都将显示接下来的20行,而不是40行。
count
int minrows = 0;
    protected void Page_Load(object sender, EventArgs e)
    {
        DisplayData();
    }
    private void DisplayData()
    {
        if (ViewState["minrows"] != null)
        {
            minrows = Convert.ToInt16(ViewState["minrows"]);
        }
        MySqlConnection conn = new MySqlConnection("server=localhost;database=apollo;user=root;password=mysqltest");
        MySqlCommand cmd = new MySqlCommand("SELECT Klantnr, Naam, Straat FROM tblklanten LIMIT "+minrows+", 20", conn);
        conn.Open();
        MySqlDataReader Reader = cmd.ExecuteReader();
        while (Reader.Read())
        {
            HtmlTableRow tr = new HtmlTableRow();
            HtmlTableCell td1 = new HtmlTableCell();
            HtmlTableCell td2 = new HtmlTableCell();
            HtmlTableCell td3 = new HtmlTableCell();
            datagrid.Controls.Add(tr);
            td1.InnerText = Reader["Klantnr"].ToString();
            td2.InnerText = Reader["Naam"].ToString();
            td3.InnerText = Reader["Straat"].ToString();
            tr.Controls.Add(td1);
            tr.Controls.Add(td2);
            tr.Controls.Add(td3);
        }
        Reader.Close();
        conn.Close();
    }
    protected void Unnamed_Click(object sender, EventArgs e)
    {
        minrows += 20;
        ViewState["minrows"] = minrows;
        datagrid.Controls.Clear();
        DisplayData();
    }
"... LIMIT " + minrows + ", " + (maxrows - minrows)