我正在通过 Web 服务 api 查询共享点列表。通过 API 调用服务需要发送一个XmlNode
表示 CAML 查询的对象。在其他一切完全相同的情况下,这是我尝试发送的两个不同查询(在发送到 API 之前通过XmlNode
'属性获得):InnerXml
<!-- This one works fine -->
<Query>
<Where>
<Eq>
<FieldRef Name="ID" />
<Value Type="Text">304</Value>
</Eq>
</Where>
</Query>
<!-- This one fails with a Soap exception (which I've seen before when searching
for an invalid field, but the first one calls the exact same field). -->
<Query>
<Where>
<In>
<FieldRef Name="ID" />
<Values>
<Value Type="Text">304</Value>
<Value Type="Text">303</Value>
<Value Type="Text">302</Value>
<Value Type="Text">301</Value>
</Values>
</In>
</Where>
</Query>
我是 CAML 查询的新手,所以也许我遗漏了一些关于In
语句如何工作的明显内容,但我查看的所有示例似乎都具有这种确切的格式。