ADO.NET,请帮忙看一下SqlDataReader 类
static void Main()
{
ArrayList dbRecordsHolder = new ArrayList();
string connectionString = "Data Source=(local);Initial Catalog=Test;Integrated Security=SSPI";
using (SqlConnection testConnection = new SqlConnection(connectionString))
{
SqlCommand testCommand = new SqlCommand("SELECT * FROM TESTDEMO", testConnection); testConnection.Open();
SqlDataReader sqlDr = testCommand.ExecuteReader(CommandBehavior.CloseConnection);
if (sqlDr.HasRows)
{
foreach (DbDataRecord rec in sqlDr)
{
dbRecordsHolder.Add(rec);
}
}
}
Console.ReadKey();
}
我对DbDataRecord不懂,看了MSDN也看不懂,请帮忙解释一下DbDataRecord rec in sqlDr
sqlDr是一个SqlDataReader啊,怎么搞得像一个集合似的。
DbDataRecord类:http://msdn.microsoft.com/zh-cn/library/system.data.common.dbdatarecord.aspx
------解决方案--------------------
DbDataRecord对象可以理解为数据阅读器读取的“当前行”或“当前记录”。
------解决方案--------------------
使 DataReader 能访问每一行中的列值,看IDataRecord帮助
------解决方案--------------------
继承链 SqlDataReader-->DbDataReader-->IEnumerable,
IEnumerable接口,自定义实现了迭代的功能。所以可将其作为一个集合遍历。
------解决方案--------------------很少见