我正在研究一個基本的mysql數據庫類,並帶有一些函數。其中一個函數應返回所有行和列的列表。代碼正在工作,而且非常動態,但它看起來也可以改進。我希望有人可以看看這段代碼,並告訴我是否有另一種解決方案來做到這一點?返回所有行和列
我嘗試過的其他解決方案之一是沒有列表,但它涉及到它必須返回的每一行都重新創建一個數組,所以我放棄了它,然後轉到列表中。
public List<object[]> ReadAllRows(string sQuery)
{
List<object[]> oResults = new List<object[]>();
try
{
MySqlCommand msCommand = new MySqlCommand
{
CommandText = sQuery,
Connection = Connection
};
using (MySqlDataReader msReader = msCommand.ExecuteReader())
{
if(!msReader.HasRows)
return EmptyList;
while (msReader.Read())
{
object[] oRowValues = new object[msReader.FieldCount];
{
msReader.GetValues(oRowValues);
}
oResults.Add(new object[] { oRowValues });
}
}
}
catch (MySqlException ex)
{
LastError = "Error: " + ex;
return EmptyList;
}
return oResults;
}
如果有任何問題,請隨時提出
你應該試試LINQ到MySQL。有許多開源的API。 http://www.devart.com/dotconnect/mysql/ – adatapost 2012-02-01 15:31:34