C# MySQL 表列表

标签 c# mysql

我是个新手,正在开发一个项目,但是我无法让它显示数据或找出问题所在或我做错了什么。任何帮助都是极好的。正如我所说,我是个新手,而且仍在经历这个过程。

public class loadData
{
    public int ID { get; set; }
    public string LOAD1 { get; set; }
    public string LOAD2{ get; set; }
    public string LOAD3 { get; set; }
    public string LOAD4 { get; set; }
    public string constructString { get; set; }

    public List<loadData> Select()
    {
        const string query = "SELECT * FROM data.dataload";
        string constring = constructString;

        //Create a list to store the result
        var list = new List<loadData>();

        //Open connection

        //Create Command
        MySqlConnection conDatabase = new MySqlConnection(constring);
        try
        {
            using (MySqlCommand cmdDatabase = new MySqlCommand(query, conDatabase))
            {
                //Create a data reader and Execute the command
                MySqlDataReader dataReader = cmdDatabase.ExecuteReader();

                //Read the data and store them in the list
                while (dataReader.Read())
                {
                    list.Add(new loadData
                    {
                        ID = int.Parse(dataReader["ID"].ToString()),
                        LOAD1 = dataReader["LOAD1"].ToString(),
                        LOAD2 = dataReader["LOAD2"].ToString(),
                        LOAD3 = dataReader["LOAD3"].ToString(),
                        LOAD4 = dataReader["LOAD4"].ToString(),
                    });
                }

                Console.ReadLine();

                //close Data Reader
                dataReader.Close();

                //close Connection
                conDatabase.Close();

                //return list to be displayed
                return list;
            }
        }
        catch
        {
            return list;
        }
        finally { conDatabase.Close(); }

    }

    public void Display(List<loadData> list)
    {
        foreach (var load in list)
        {
            Console.WriteLine(string.Format("{0} {1}:\n{2}\n{3}\n{4}\n",
                load.ID,
                load.LOAD1,
                load.LOAD2,
                load.LOAD3,
                load.LOAD4));
        }
    }
    /// CALL
    //MYSQL
    loadData data = new loadData();
    data.constructString = "datasource=dbt;port=8888;username=UNAME;password=PW;";
    data.Display(data.Select());
}

(根据OP给出的评论),错误是:

{"Connection must be valid and open."} An unhandled exception of type 'System.InvalidOperationException' occurred

最佳答案

您忘记调用conDatabase.Open()。在尝试执行 cmd Database.ExecuteReader(); 之前执行此操作,就可以了

关于C# MySQL 表列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41098997/

相关文章:

c# - 用户输入字符而不是 double 字符时的错误处理

c# - C# 所需的 HASP HL 工作演示

mysql - 新错误。老的。 mysql在cms中触发注册

php - 如何将核心 php 用于 Codeigniter Controller 文件?

mysql - 从具有公共(public)行元素的两个不同表中提取数据

php - while 循环内部带有 mysql fetch 的 while 循环

c# - 从父 C# 调用子方法

c# - 无法连接本地mysql数据库

c# - 在c#中从mysql数据库检索单词分数

mysql - 如何添加在同一表中的另一列上递增的列?