Пример #1
0
 public IEnumerable <ICdlRecord> EnumRows(ArrayDataRecord record, string query, int subSetColumnCount)
 {
     using (var selcmd = _conn.CreateCommand())
     {
         selcmd.CommandText = query;
         using (var reader = selcmd.ExecuteReader())
         {
             while (reader.Read())
             {
                 for (int i = 0; i < subSetColumnCount; i++)
                 {
                     record.SeekValue(i);
                     var type = (TypeStorage)reader.GetInt32(i * 2);
                     StorageTool.ReadValue(reader, i * 2 + 1, type, record);
                 }
                 yield return(record);
             }
         }
     }
 }
Пример #2
0
        public CdlTable LoadTableData(string query)
        {
            var table = new CdlTable(_table);

            using (var selcmd = _conn.CreateCommand())
            {
                selcmd.CommandText = query;
                using (var reader = selcmd.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        var row = new ArrayDataRecord(_table);
                        for (int i = 0; i < _table.ColumnCount; i++)
                        {
                            row.SeekValue(i);
                            var type = (TypeStorage)reader.GetInt32(i * 2);
                            StorageTool.ReadValue(reader, i * 2 + 1, type, row);
                        }
                        table.AddRowInternal(row);
                    }
                }
            }
            return(table);
        }