我只是尝试学习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”作为整数
答案 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;}
}