【问题标题】:How to load a dropdown list box from Mysql database using C# asp.net? [closed]如何使用 C# asp.net 从 Mysql 数据库加载下拉列表框? [关闭]
【发布时间】:2014-01-17 09:20:48
【问题描述】:

我想用 C# 在 asp.net 中加载带有来自 Mysql 的表的列的下拉列表框。

【问题讨论】:

  • 在 37 秒内为这个问题投了 2 票?
  • @SonerGönül 和 3 个最爱:P
  • 是的 5 分钟内回答了 4 个很好的问题..
  • -1, "没有显示任何研究成果"

标签: c# mysql asp.net


【解决方案1】:
string str="Select km from tablename;
            SqlDataAdapter ad = new SqlDataAdapter(str,connection object);
            DataSet ds = new DataSet();
            ad.Fill(ds);

            if (ds.Tables[0].Rows.Count != 0)
            {
                Textbox1.Text = ds.Tables[0].Rows[0][0].ToString();
            }

【讨论】:

    【解决方案2】:

    所以现在您已经注意到您只想加载单个字段。这就是下面的代码要做的事情。它将从单个表中选择单个字段,并将其绑定到组合框。

    using (MySqlConnection c = new MySqlConnection(connString))
    {
        c.Open();
    
        var sql = "SELECT field_name FROM table_name";
        using (MySqlCommand cmd = new MySqlCommand(sql, c))
        {
            var dt = new DataTable();
            dt.Load(cmd.ExecuteReader());
    
            comboBox.ValueMember = "field_name";
            comboBox.DisplayMember = "field_name";
            comboBox.DataSource = dt;
        }
    }
    

    不过,我认为它更普遍的用法可能是这样的:

    using (MySqlConnection c = new MySqlConnection(connString))
    {
        c.Open();
    
        var sql = "SELECT key_field, display_field FROM table_name";
        using (MySqlCommand cmd = new MySqlCommand(sql, c))
        {
            var dt = new DataTable();
            dt.Load(cmd.ExecuteReader());
    
            comboBox.ValueMember = "key_field";
            comboBox.DisplayMember = "display_field";
            comboBox.DataSource = dt;
        }
    }
    

    您在此处列出数据,并同时拥有key_fielddisplay_field。其重要性通常是组合框用于查找类型数据。无论哪种方式,当您想要获取组合框的值时,请使用SelectedValue 成员。

    comboBox.SelectedValue
    

    【讨论】:

    • 感谢您的回复,但我可以在 C# asp.net 中得到相同的结果
    • @user2959767: 提供的代码已经在 C#...
    • @David :) 我...我只是哈哈大笑:)
    【解决方案3】:

    欢迎来到 Stackoverflow:)

    请参考以下代码 sn-p 了解您的要求:

    var connectionString = "connection string goes here";
        using (var connection = new MySqlConnection(connectionString))
        {
            connection.Open();
            var query = "SELECT Id FROM Customers";
            using (var command = new MySqlCommand(query, connection))
            {
                using (var reader = command.ExecuteReader())
                {
                    //Iterate through the rows and add it to the combobox's items
                    while (reader.Read())
                    {
                        CustomerIdComboBox.Items.Add(reader.GetString("Id"));    
                    }
                }    
            }
        }
    

    【讨论】:

    • 感谢 Rohit Vyas 的快速回复。
    • @user2959767 :没问题,感谢您将其标记为 answere
    猜你喜欢
    • 1970-01-01
    • 2018-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多