如何使用List<调用方法串GT;参数

时间:2015-11-21 11:40:36

标签: c# mysql list select methods

我只是尝试学习C#作为初学者(我的英语很差,sry) 我想读一个mySQL数据库

中我发现了一篇非常好的文章
  

http://www.codeproject.com/Articles/43438/Connect-C-to-MySQL

我成功地通过

调用方法计数
        DBConnect dbx = new DBConnect();
        int i2 = dbx.Count();

但问题:如何调用方法选择 它的定义是:

        public List< string >[] Select()

如何在我的主程序中声明一个List并调用该方法?

我尝试了像

这样的代码
List<Daten> liste = new List<Daten>();
liste = dbx.Select()[myDaten];

为简单起见,假设在“Daten”中我只有2个变量“name”作为字符串而“age”作为整数

1 个答案:

答案 0 :(得分:0)

在文章中提到了这种方法:

public List< string >[] Select()

只是 DBConnect 类的一部分。所以要获取数据,你必须调用dbx.Select();仅获取数据。如果要将数据转换为类 Daten ,则必须更新Select方法的代码,以返回Daten类实例的集合,而不是字符串集合。 代码看起来大概如下:

public IEnumerable<Daten> Select()
{
    string query = "SELECT * FROM tableinfo";

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

    //Open connection
    if (this.OpenConnection() == true)
    {
        //Create Command
        MySqlCommand cmd = new MySqlCommand(query, connection);
        //Create a data reader and Execute the command
        MySqlDataReader dataReader = cmd.ExecuteReader();

        //Read the data and store them in the list
        while (dataReader.Read())
        {
            var id = int.Parse(dataReader["id"]);
            var name = dataReader["name"];
            var age = int.Parse(dataReader["age"]);

            var daten = new Daten { Id = id, Age = age, Name = name };
            list.Add(daten)
        }

        //close Data Reader
        dataReader.Close();

        //close Connection
        this.CloseConnection();

        //return list to be displayed
        return list;
    }
    else
    {
        return list;
    }
}

我假设,Daten类看起来像这样:

public class Daten {
    public int Id {get;set;}
    public int Age {get;set;}
    public string Name {get;set;}
}