CSharp CRUD 系统将数据库中的数据显示到消息框

CSharp CRUD System displaying data out of database into messagebox

我刚开始编写 C#。我在显示消息框或类似内容时遇到问题。我想用一个按钮显示一条消息。我有一个名为 GetNameById() 的函数;这个应该是触发消息的功能,但我不知道如何。谁能帮我。这是我的代码。

private void Form1_Load(object sender, EventArgs e)
    {
        namemanager x = new namemanager();
        List<Class1> lijst = x.GetAllNames();

        comboBox1.DataSource = lijst;
    }

    private void button1_Click(object sender, EventArgs e)
    {
        namemanager x = new namemanager();
        x.InsertName(textBox1.Text);

    }

    private void button1_Click(object sender, EventArgs e)
    {
        studentmanager x = new studentmanager();
        Student y = new Student();
        y.Achternaam = textBox1.Text;
        y.Voornaam = textBox2.Text;
        y.Diploma = checkBox1.Checked;

        x.InsertNaam(y);

    }


    private void button2_Click(object sender, EventArgs e)
    {
        Class1 name = new Class1();
        name.Id = 5;
        name.Name = "This Record is updated";

        namemanager x = new namemanager();
        x.UpdateGenre(name);
    }

    private void button3_Click(object sender, EventArgs e)
    {
        namemanager x = new namemanager();
        x.DeleteById(4);
    }

    private void button4_Click(object sender, EventArgs e)
    {
        namemanager nameManager = new namemanager();
        Class1 x = nameManager.GetNameById(2);

    }

这是我的另一段代码:

class namemanager
{
    MySqlConnection con;
    //CONSTRUCTOR
    public namemanager()
    {
        con = new MySqlConnection("Server=localhost;Database=cruddatabase;Uid=root;Pwd=;");
    }

    public List<Class1> GetAllNames()
    {
        con.Open();
        try
        {
            MySqlCommand cmd = new MySqlCommand("SELECT * FROM names", con);
            MySqlDataReader reader = cmd.ExecuteReader();

            List<Class1> result = new List<Class1>();

            while (reader.Read())
            {
                Class1 names = new Class1();
                names.Id = (int)reader["id"];
                names.Name = (string)reader["name"];

                result.Add(names);
            }
            return result;
        }
        finally
        {
            con.Close();
        }


    }

    //INSERT
    public void InsertName(string aName)
    {
        con.Open();
        try
        {
            MySqlCommand cmd = new MySqlCommand("INSERT INTO names(name) VALUES(@name)", con);
            cmd.Parameters.AddWithValue("@name", aName.Trim());
            cmd.ExecuteNonQuery();

        }
        finally
        {
            con.Close();
        }
    }

    //UPDATE
    public void UpdateGenre(Class1 aName)
    {
        con.Open();
        try
        {
            MySqlCommand cmd = new MySqlCommand("UPDATE names SET name = @name WHERE id = @id ", con);
            cmd.Parameters.AddWithValue("@name", aName.Name);
            cmd.Parameters.AddWithValue("@id", aName.Id);

            cmd.ExecuteNonQuery();

        }
        finally
        {
            con.Close();
        }
    }
    //DELETE

    public void DeleteById(int aId)
    {
        con.Open();
        try
        {
            MySqlCommand cmd = new MySqlCommand("DELETE FROM names WHERE id = @id", con);
            cmd.Parameters.AddWithValue("@id", aId);

            int x = cmd.ExecuteNonQuery();
        }
        finally
        {
            con.Close();
        }
    }

    public Class1 GetNameById(int aId)
    {
        con.Open();
        try
        {
            MySqlCommand cmd = new MySqlCommand("SELECT * FROM names WHERE id = @id", con);
            cmd.Parameters.AddWithValue("@id", aId);
            MySqlDataReader reader = cmd.ExecuteReader();

            if (reader.Read())
            {
                Class1 result = new Class1();
                result.Id = (int)reader["id"];
                result.Name = (string)reader["name"];

                return result;
            }
            else
            {
                throw new Exception("NIET GEVONDEN");
            }

        }
        finally
        {
            con.Close();
        }
    }
}

感谢您的帮助!

代码后:

Class1 x = nameManager.GetNameById(2);

您需要显示信息。 x 是 Class1 的实例,因此它的属性之一是 Name。因此,您可以通过 x.Name.

引用它

在 Windows Forms 中,显示对话框的调用基于名为 MessageBox 的 class,它有一个名为 Show 的 shared/static 函数。

所以,你的下一行是:

System.Windows.Forms.MessageBox.Show(x.Name, "Form Title");