从.NET 2.0开始,你可以用一行代码解决转换问题:
DataReader To DataTable
Dim dr As SqlDataReader = cmd.ExecuteReader(CommandBehavior.CloseConnection)
Dim dt As DataTable = New DataTable()
dt.Load(dr)
DataTable To DataReader
Dim dt Ad DataTable =
Dim dr As DataTableReader = dt.CreateDataReader()
注意:
1. 使用Load方法时,如果DataTable中已经存有数据,新旧数据将合并。(新数据是指从DataReader中读取的)
2. DataTableReader 实现了 IDataReader,尽量使用接口。
3. DataSet 也有类似 Load 和 CreateDataReader 方法。(有示例源码)
请参阅MSDN文档 http://msdn2.microsoft.com/en-us/library/5fd1ahe2.aspx
和 http://msdn2.microsoft.com/en-us/library/system.data.dataset.createdatareader.aspx