通常,我使用一個類此:
public class ClassName
{
public string Col1 { get; set; }
public int Col2 { get; set; }
}
現在你可以使用一個循環來填充列表,並ToArray
如果你真的需要一個數組:
ClassName[] allRecords = null;
string sql = @"SELECT col1,col2
FROM some table";
using (var command = new SqlCommand(sql, con))
{
con.Open();
using (var reader = command.ExecuteReader())
{
var list = new List<ClassName>();
while (reader.Read())
list.Add(new ClassName { Col1 = reader.GetString(0), Col2 = reader.GetInt32(1) });
allRecords = list.ToArray();
}
}
注意我推測第一列是string
,第二列是integer
。只是爲了演示C#是類型安全的,以及如何使用DataReader.GetXY
方法。
DataTable dt = new DataTable();
using (var con = new SqlConnection("Data Source=local;Initial Catalog=Test;Integrated Security=True"))
{
using (var command = new SqlCommand("SELECT col1,col2" +
{
con.Open();
using (SqlDataReader dr = command.ExecuteReader())
{
dt.Load(dr);
}
}
}
您還可以使用SqlDataAdapater
來填補你的DataTable像
SqlDataAdapter da = new SqlDataAdapter(command);
da.Fill(dt);
稍後,您可以遍歷每一行和每一比較喜歡: