Graphql Jooq中的SortField不允许对字段进行排序

Graphql Jooq中的SortField不允许对字段进行排序,graphql,jooq,graphql-java,Graphql,Jooq,Graphql Java,因此,我尝试编写一个函数,该函数允许在多个字段中按升序或降序排序。我的代码在下面 //SortBy List<SortField> order = new ArrayList<>(); for (String field:sortBy) { if ((ascending)) { order.add(DSL.field(field).asc()); } else { order

因此,我尝试编写一个函数,该函数允许在多个字段中按升序或降序排序。我的代码在下面

 //SortBy
    List<SortField> order = new ArrayList<>();
    for (String field:sortBy) {
        if ((ascending)) {
            order.add(DSL.field(field).asc());
        } else {
            order.add(DSL.field(field).desc());
        }
    }

    return jooq.selectFrom(CAR)
        .orderBy(order.toArray(new SortField[order.size()]))
        .fetchInto(Car.class);
//排序
列表顺序=新建ArrayList();
for(字符串字段:sortBy){
如果((升序)){
add(DSL.field(field.asc());
}否则{
order.add(DSL.field(field.desc());
}
}
返回作业。选择从(汽车)
.orderBy(order.toArray(新的SortField[order.size()]))
.进入(汽车类);
问题是,如果我输入两个字段(例如[color,year]),它只根据第二个参数排序,而不根据第一个参数排序(升序和降序)。当我根本并没有SortField,只使用了Field时,它工作得很好,尽管只是为了升序

 //SortBy
    List<Field> order = new ArrayList<>();
    for (String field:sortBy) {
        if ((ascending)) {
            order.add(DSL.field(field));
        } else {
            order.add(DSL.field(field));
        }
    }

    return jooq.selectFrom(CAR)
        .orderBy(order.toArray(new Field[order.size()]))
        .fetchInto(Car.class);
//排序
列表顺序=新建ArrayList();
for(字符串字段:sortBy){
如果((升序)){
order.add(DSL.field(field));
}否则{
order.add(DSL.field(field));
}
}
返回作业。选择从(汽车)
.orderBy(order.toArray(新字段[order.size()]))
.进入(汽车类);
我被困了一段时间,不明白为什么会这样。有人知道吗


谢谢

据我所知,您的代码看起来是正确的。您能告诉我们您使用的是哪个版本的jOOQ吗?此外,如果您没有显式地将
Settings.executeLogging
设置为
false
(或禁用调试日志记录),您应该会看到一些日志记录,它准确地显示了执行的SQL查询。你能验证一下这看起来是正确的吗?据我所知,你的代码看起来是正确的。您能告诉我们您使用的是哪个版本的jOOQ吗?此外,如果您没有显式地将
Settings.executeLogging
设置为
false
(或禁用调试日志记录),您应该会看到一些日志记录,它准确地显示了执行的SQL查询。你能确认这看起来是正确的吗?