/// <summary> /// 获取实体列表 /// </summary> /// <param name="sender">请求SQL语句</param> /// <param name="table">数据表</param> /// <param name="extraArg">创建实体时的额外参数</param> /// <returns>实体列表</returns> internal List <T> InternalGetEntityList(Object sender, DataTable table, Object extraArg) { List <T> list = null; if (!DbConvert.IsDataTableNull(table)) { list = new List <T>(table.Rows.Count); for (Int32 i = 0; i < table.Rows.Count; i++) { T entity = this.InternalGetEntity(sender, i, table.Rows[i], extraArg); list.Add(entity); } } return(list); }
/// <summary> /// 获取实体数组 /// </summary> /// <param name="sender">请求SQL语句</param> /// <param name="table">数据表</param> /// <param name="extraArg">创建实体时的额外参数</param> /// <returns>实体数组</returns> internal T[] InternalGetEntityArray(Object sender, DataTable table, Object extraArg) { T[] array = null; if (!DbConvert.IsDataTableNull(table)) { array = new T[table.Rows.Count]; for (Int32 i = 0; i < table.Rows.Count; i++) { T entity = this.InternalGetEntity(sender, i, table.Rows[i], extraArg); array[i] = entity; } } return(array); }
/// <summary> /// 获取实体列表 /// </summary> /// <param name="sender">请求SQL语句</param> /// <param name="table">数据表</param> /// <param name="keyColumnName">键列名称</param> /// <param name="extraArg">创建实体时的额外参数</param> /// <returns>实体列表</returns> internal Dictionary <TKey, T> InternalGetEntityDictionary <TKey>(Object sender, DataTable table, String keyColumnName, Object extraArg) { Dictionary <TKey, T> dict = null; if (!DbConvert.IsDataTableNull(table)) { dict = new Dictionary <TKey, T>(table.Rows.Count); for (Int32 i = 0; i < table.Rows.Count; i++) { TKey key = this.LoadValue <TKey>(table.Rows[i], table.Columns, keyColumnName); T entity = this.InternalGetEntity(sender, i, table.Rows[i], extraArg); dict[key] = entity; } } return(dict); }