我想将选择查询的结果存储在 C# 中的数组中。请告诉我如何获取数据表值并存储在数组中。我的选择查询结果包含 n 行,只有一列。
问问题
8818 次
3 回答
7
替换type
为单列的数据类型(例如int
,、string
...)和myField
单列的名称。
var myArray = (from row in myDataTable.AsEnumerable()
select row.Field<type>("myField")).ToArray();
使用 C# 的泛型和类型推断的魔力,您的数组将自动具有正确的数据类型(例如int[]
, string[]
, ...)。
于 2012-04-11T06:31:21.613 回答
4
尝试这样的事情
private void getData()
{
SqlCeConnection conn = new SqlCeConnection("data source='c:\\northwind.sdf'; mode=Exclusive;");
SqlCeDataAdapter da = new SqlCeDataAdapter("Select [Unit Price] from Products", conn);
DataTable dtSource = new DataTable();
da.Fill(dtSource);
DataRow[] dr = new DataRow[dtSource.Rows.Count];
dtSource.Rows.CopyTo(dr, 0);
double[] dblPrice= Array.ConvertAll(dr, new Converter<DataRow , Double>(DataRowToDouble));
}
public static double DataRowToDouble(DataRow dr)
{
return Convert.ToDouble(dr["Unit Price"].ToString());
}
于 2012-04-11T06:30:49.163 回答
0
DataTable mydt = new DataTable();
ArrayList aLrows = new ArrayList();
foreach (DataRow dataRow in mydt.Rows)
{
aLrows.Add(string.Join(";", dataRow.ItemArray.Select(item => item.ToString)));
}
于 2012-04-11T06:38:43.310 回答