此CAML查询是否存在明显的缺陷?

问题描述

| 我正在通过Web服务api查询共享点列表。通过API调用服务需要发送一个表示CAML查询的“ 0”对象。在其他所有条件完全相同的情况下,这是我尝试发送的两个不同查询(在将它们发送到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
语句的工作原理,但是我看过的所有示例似乎都具有这种确切的格式。     

解决方法

您正在使用哪个版本的SharePoint? IN元素似乎仅在SharePoint 2010中有效。(根据本文:http://www.lushpedia.com/post/Alternative-of-In-Clause-for-CAML-Query-for-SharePoint-2007。 aspx)     

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...