Ejemplo n.º 1
0
        internal static Cell FromTsCell(TsCell tsc, TsColumnType tsct)
        {
            if (tsc.boolean_valueSpecified)
            {
                return(new Cell(tsc.boolean_value));
            }
            else if (tsc.double_valueSpecified)
            {
                return(new Cell(tsc.double_value));
            }
            else if (tsc.sint64_valueSpecified)
            {
                return(new Cell(tsc.sint64_value));
            }
            else if (tsc.timestamp_valueSpecified)
            {
                return(new Cell(tsc.timestamp_value, isUnixTimestamp: true));
            }
            else if (tsc.varchar_valueSpecified)
            {
                switch (tsct)
                {
                case TsColumnType.BLOB:
                    return(new Cell(tsc.varchar_value, ColumnType.Blob));

                case TsColumnType.VARCHAR:
                    return(new Cell(tsc.varchar_value, ColumnType.Varchar));

                default:
                    return(new Cell(tsc.varchar_value, ColumnType.Varchar));
                }
            }

            return(new Cell());
        }
Ejemplo n.º 2
0
        internal Row(TsRow tsr, TsColumnDescription[] tscols = null)
        {
            Cell[] cary = new Cell[tsr.cells.Count];
            for (int i = 0; i < tsr.cells.Count; ++i)
            {
                TsCell       tsc  = tsr.cells[i];
                TsColumnType tsct = TsColumnType.VARCHAR;
                if (EnumerableUtil.NotNullOrEmpty(tscols))
                {
                    tsct = tscols[i].type;
                }

                Cell c = Cell.FromTsCell(tsc, tsct);
                cary[i] = c;
            }

            cells = cary;
        }