Не вносятся данные в БД. C#, WinForm

Делаю windows form связанную с БД xampp my sql, чтобы в форме можно было заполнять базу данных Выдает ошибку в строе if (command.ExecuteNonQuery() == 1)

Исключение не обработано System.InvalidOperationException: "Connection must be valid and open."

Помогите пожалуйста

internal class DB
        {
            MySqlConnection connection = new MySqlConnection("datasource=127.0.0.1;port=3306;username=root;database=shop1;");
            public void openConnection()
            {
                if (connection.State == System.Data.ConnectionState.Closed)
                    connection.Open();
            }
            public void closeConnection()
            {
                if (connection.State == System.Data.ConnectionState.Open)
                    connection.Close();
            }

            public MySqlConnection getConnection()
            {
                return connection;
            }

        }

        private void button1_Click(object sender, EventArgs e)
        {
            DB db = new DB();
            MySqlCommand command = new MySqlCommand("INSERT INTO products (name, price) VALUES('@name', '@price')");


            command.Parameters.Add("@name", MySqlDbType.VarChar).Value = textBox1.Text;
            command.Parameters.Add("@price", MySqlDbType.VarChar).Value = textBox2.Text;

            db.openConnection();
            if (command.ExecuteNonQuery() == 1)
                MessageBox.Show("Товар добавлен");
            else
                MessageBox.Show("Товар не добавлен");

            db.closeConnection();

        }

Ответы (1 шт):

Автор решения: aepot

Вот вы создаете

MySqlCommand command = new MySqlCommand("текст запроса");

А как команда поймет, какое подключение к базе надо использовать, чтобы принести вам данные? Телепатически? :)

То есть ей надо назначить подключение. У вас даже метод есть getConnection(), вы не находите странным, что ни разу его не использовали?

MySqlCommand command = new MySqlCommand("текст запроса", db.getConnection());
→ Ссылка