Datatable加载LoadDataRow时用BeginLoadData和EndLoadData提高效率
2017-08-09 10:53
274 查看
@Daniel Cai: 我现在就是用的这种方式哦!
/// <summary>
/// 自定义将IDataReader转换为DataTable
/// </summary>
/// <param name="reader"></param>
/// <returns></returns>
public static void CustomLoadDataTable(DataTable dataTable, IDataReader reader)
{
int fieldCount = reader.FieldCount;
for (int i = 0; i < fieldCount; ++i)
{
dataTable.Columns.Add(reader.GetName(i), reader.GetFieldType(i));
}
dataTable.BeginLoadData();
object[] objValues = new object[fieldCount];
while (reader.Read())
{
reader.GetValues(objValues);
dataTable.LoadDataRow(objValues, true);
}
reader.Close();
dataTable.EndLoadData();
}
/// <summary>
/// 自定义将IDataReader转换为DataTable
/// </summary>
/// <param name="reader"></param>
/// <returns></returns>
public static void CustomLoadDataTable(DataTable dataTable, IDataReader reader)
{
int fieldCount = reader.FieldCount;
for (int i = 0; i < fieldCount; ++i)
{
dataTable.Columns.Add(reader.GetName(i), reader.GetFieldType(i));
}
dataTable.BeginLoadData();
object[] objValues = new object[fieldCount];
while (reader.Read())
{
reader.GetValues(objValues);
dataTable.LoadDataRow(objValues, true);
}
reader.Close();
dataTable.EndLoadData();
}
相关文章推荐
- C#实现SQL全库检索数据-比较使用DataReader与DataAdapter+Datatable效率,差距惊人!
- WebView通过loadDataWithBaseURL加载本地页面卡死
- Ionic进行PC端Web开发时通过脚本压缩提高第一次加载效率
- Extjs4 重写Ext.data.TreeStore的load方法,不使多次加载
- 避免Flex RSL重复load 提高module加载性能
- 从数据库加载图片,提高效率,缓存
- SQLite 解决:Could not load file or assembly 'System.Data.SQLite ... 试图加载格式不正确的程序
- 为提高效率而加载列表值
- ArcGIS10.3 for Desktop启用临时本地副本功能提高地图文档加载效率
- 提高浏览器加载页面效率的讨论
- Echarts动态加载地图数据(Dynamic load Echarts map data)
- 百度地图API异步加载,提高页面效率
- webview.loadData加载出现乱码问题
- Unity加载外部图片效率提高百倍以上的方法
- JavaScript提高加载和执行效率的方法
- 使用ByteArray及AMF来提高Data Object的操作效率
- android webview loaddata 或loadDataWithBaseURL加载页面空白
- 解决Ios加载大图时出JPEG Corrupt JPEG data: premature end of data segment错误,导致加载时卡的问题。
- UITableview优化随笔(1)-提高加载更多内容时的效率 顺便解决加载更多jump问题