如何在Dynamics NAV WebService中将Entity_Filter应用为OR

时间:2015-09-21 13:21:59

标签: web-services soap microsoft-dynamics dynamics-nav-2009

我正在使用Dynamics NAV 2009 WebService(SOAPish)。具体我说的是ReadMultiple方法MSDNA

filterArray 采用 Entity_Filter 对象的数组。每个 Entity_Filter 都有字段条件属性。

现在我想知道,我如何将过滤器应用为OR not和。

例如,我传递了两个过滤器:

Entity_Filter { Field: "Name", Criteria: "*banana*" }
Entity Filter { Field: "Color", Criteria: "yellow"}

如果我将其发送到ReadMultiple,我会将所有带有“banana”的条目作为名称 AND 的一部分,颜色为黄色。我该怎么做,让所有具有“香蕉”的条目作为名称 OR 的一部分变成黄色?

1 个答案:

答案 0 :(得分:1)

不幸的是,没有办法应用' OR'过滤记录。 ReadMultiple方法以与C / AL方法SETFILTER或SETRANGE相同的方式应用过滤器。它必须在两个单独的请求中完成。

第二个想法,你可以在一个请求中完成它,但使用Linq的OData服务:

@FunctionalInterface
public interface Supplier<T> {    
    T get();
}

Where&#39; ItemsList&#39;是一种类型为&#39; Page&#39;

的OData网络服务