public SqlEntityMatchingKeysReader(IConnectionContext context, Field[] keys)
        {
            var tempTable = context.Entity.GetExcelName();

            _context     = context;
            _keys        = keys;
            _rowCapacity = context.GetAllEntityFields().Count();
            _hashCode    = context.Entity.TflHashCode();
            _fields      = CombineFields(keys, _hashCode);
            _create      = SqlCreateKeysTable(context, tempTable);
            _insert      = SqlInsertTemplate(context, tempTable, keys);
            _query       = SqlQuery(keys, context, tempTable, _hashCode);
            _drop        = SqlDrop(context, tempTable);
            _rowCreator  = new SqlRowCreator(context);
        }
        public SqlEntityMatchingKeysReader(IConnectionContext context, Field[] keys) {

            var tempTable = context.Entity.GetExcelName();

            _context = context;
            _keys = keys;
            _rowCapacity = context.GetAllEntityFields().Count();
            _hashCode = context.Entity.TflHashCode();
            _fields = CombineFields(keys, _hashCode);
            _create = SqlCreateKeysTable(context, tempTable);
            _insert = SqlInsertTemplate(context, tempTable, keys);
            _query = SqlQuery(keys, context, tempTable, _hashCode);
            _drop = SqlDrop(context, tempTable);
            _rowCreator = new SqlRowCreator(context);
        }