因此,我在blacknight.com上托管了一个网站。我使用cSharp和asp.net进行编码,我也在blacknight中存储了mySQL数据库。

但是,我想在我的网站上添加一个管理部分,用户可以在其中登录并按“加载数据”按钮,而blacknight数据库的注册表值将出现在网格视图中。
但是它只是不起作用。我想知道我是否必须将gridview物理连接到数据库?因为我尝试使用gridview连接到托管数据库,并且一直说无法连接。
以下是我的加载数据按钮背后的代码。就目前而言,当我将管理页面上传到blacknight并运行时,gridview甚至没有出现。这是我大学四年级的项目,我真的需要使其运转。任何帮助将不胜感激。

    protected void Button1_Click(object sender, EventArgs e)
    {
        string constring ="Server=xxxx; Database=xxxx; Uid=xxx; Pwd=xxx";

        MySqlConnection conDb1317466_bk = new MySqlConnection(constring);
        DataSet dbdataset = new DataSet();
        //binding.DataSource = this.bindingSource.DataSource;
        MySqlCommand cmdDb1317466_bk = new MySqlCommand("Select * from db1317466_bk.registration;", conDb1317466_bk);

        try
        {
            MySqlDataAdapter sda = new MySqlDataAdapter();
            sda.SelectCommand = cmdDb1317466_bk;
            DataTable dbdataset1 = new DataTable();
            sda.Fill(dbdataset);
            BindingSource bSource = new BindingSource();

            bSource.DataSource = dbdataset;
            //DataGridView1.DataSource = bSource;

            DataGridView1.DataBind();

            sda.Update(dbdataset);

        }

        catch (Exception)
        {
            Page.ClientScript.RegisterStartupScript(this.GetType(), "scriptkey", "<script>alert('Can Load data');</script>");
        }
    }
}

最佳答案

试试这个

GridView1.DataSource=dbdataset;
GridView1.DataBind();


而不是使用

BindingSource bSource = new BindingSource();
bSource.DataSource = dbdataset;
DataGridView1.DataBind();


另外,我认为您不应使用:

sda.Update(dbdataset);

07-24 09:32