在实现了 Deep Dive 12 中的所有步骤之后,我一直在尝试使用 $filter 操作,就像普通的 oData 服务应该做的那样。
https://baseurl/odata/v2/CrudService/BusinessPartner ?$filter=BusinessPartnerCategory eq 'abc'。
但是,它不起作用。它总是返回相同的实体集。我看过它的javadoc。似乎没有检索过滤器的方法。我看到有 getTopOptionValue、getSkipOptionValue、getSelectProperties 和 getOrderByProperties。
获取 $fitler 操作值的选项有哪些?
另一件事是在深潜 4 中。我看到过滤器是硬编码的。
final List<BusinessPartner> businessPartners =
new DefaultBusinessPartnerService()
.getAllBusinessPartner()
.select(BusinessPartner.BUSINESS_PARTNER,
BusinessPartner.LAST_NAME,
BusinessPartner.FIRST_NAME,
BusinessPartner.IS_MALE,
BusinessPartner.IS_FEMALE,
BusinessPartner.CREATION_DATE)
.filter(BusinessPartner.BUSINESS_PARTNER_CATEGORY.eq(CATEGORY_PERSON))
.orderBy(BusinessPartner.LAST_NAME, Order.ASC)
.execute();
我需要什么来构建可能包含多个过滤器的动态过滤器语句?
谢谢