0
我想从MySQL数据库返回值的ArrayList。我尝试了几个解决方案,但他们没有我需要的那么优雅。我的问题:我有一个数据库中的表可以改变结构(改变表)。我需要一种方法来检测当前的表结构,然后将数据放入数组列表中,使用正确的类型(不投射到Object)是否有解决这个问题的方法?我不希望逻辑写在波纹管里面。C#mysql返回行的列表
IDbCommand sql = dbLink.CreateCommand();
sql.CommandText = "SELECT * FROM table WHERE cond";
IDataReader reader = null;
try
{
reader = sql.ExecuteReader();
}
catch (Exception er)
{
Log.error ("error executing query");
}
while(reader.Read())
{
//dont want like this
value = (string)reader["item"];
//logic to implement
}
reader.Close();
reader = null;
sql.Dispose();
sql = null;
你应该将你的连接包装在一个'using ....'中。另外,抛弃'ArrayList',stick到正常的'IEnumerable'或'List',除非你有理由不这样做。 – Arran 2013-05-02 20:10:03