【发布时间】:2017-03-28 02:11:54
【问题描述】:
我有一个不断抛出错误的 CAML 查询。
System.Web.Services.dll 中发生了“System.Web.Services.Protocols.SoapException”类型的第一次机会异常 线程 0x1574 已退出,代码为 0 (0x0)。
是的,所以描述性不是很好。我猜这与我使用“Or”元素的方式有关。
这是我的查询的样子:
<Where>
<And>
<IsNotNull>
<FieldRef Name='myRefID' />
</IsNotNull>
<And>
<Or>
<In>
<FieldRef Name='myRefID' />
<Values>
<Value Type='Number'>1</Value>
<Value Type='Number'>2</Value>
<Value Type='Number'>3</Value>
<Value Type='Number'>4</Value>
...
<Value Type='Number'>499</Value>
</Values>
</In>
<In>
<FieldRef Name='myRefID' />
<Values>
<Value Type='Number'>500</Value>
<Value Type='Number'>501</Value>
<Value Type='Number'>502</Value>
<Value Type='Number'>503</Value>
...
<Value Type='Number'>999</Value>
</Values>
</In>
<In>
<FieldRef Name='myRefID' />
<Values>
<Value Type='Number'>1000</Value>
<Value Type='Number'>1001</Value>
<Value Type='Number'>1002</Value>
<Value Type='Number'>1003</Value>
...
<Value Type='Number'>1111</Value>
</Values>
</In>
</Or>
</And>
</And>
</Where>
还要注意,我需要搜索特定的 ID,因此这就是我使用这么多 IN 子句的原因。 id 在上面的顺序仅用于说明目的。在我的真实案例中,数字不是按顺序排列的。所以我不能使用在开始数字和结束数字之间进行搜索的查询。
【问题讨论】:
标签: sharepoint caml