首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在SPQuery中与其他元素一起使用IN元素

在SPQuery中与其他元素一起使用IN元素
EN

Stack Overflow用户
提问于 2013-10-31 08:52:08
回答 1查看 1.1K关注 0票数 0

我试图使用以下查询从列表中检索项目:

代码语言:javascript
复制
query.Query = 
@"<Where>
    <And>
        <And>
            <Geq>
                <FieldRef Name='Date' /><Value Type='DateTime' IncludeTimeValue='TRUE'>" + SPUtility.CreateISO8601DateTimeFromSystemDateTime(dateFrom) + @"</Value>
            </Geq>
            <Leq>
                <FieldRef Name='Date' /><Value Type='DateTime' IncludeTimeValue='TRUE'>" + SPUtility.CreateISO8601DateTimeFromSystemDateTime(dateTo) + @"</Value>
            </Leq>
        </And>
        <In>
            <FieldRef Name='Employee' LookupId='TRUE' />
                <Values>
                    <Value Type='int'>1</Value>
                    <Value Type='int'>3</Value>
                </Values>
        </In>
    </And>
</Where>";

在运行时,我得到以下异常:SPException:一个或多个字段类型没有正确安装。转到“列表设置”页面,删除这些字段( on List.GetItems(query) )。

如果我像这样修改SPQuery:

代码语言:javascript
复制
query.Query =
@"<Where>
    <And>
        <Geq>
            <FieldRef Name='Date' /><Value Type='DateTime' IncludeTimeValue='TRUE'>" + SPUtility.CreateISO8601DateTimeFromSystemDateTime(dateFrom) + @"</Value>
        </Geq>
        <Leq>
            <FieldRef Name='Date' /><Value Type='DateTime' IncludeTimeValue='TRUE'>" + SPUtility.CreateISO8601DateTimeFromSystemDateTime(dateTo) + @"</Value>
        </Leq>
    </And>
</Where>";

或者这个:

代码语言:javascript
复制
query.Query =
@"<Where>
    <In>
        <FieldRef Name='Employee' LookupId='TRUE' />
            <Values>
                <Value Type='int'>1</Value>
                <Value Type='int'>3</Value>
            </Values>
    </In>
</Where>";

一切都很完美。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-10-31 11:20:10

令人惊讶的是,在重用SPQuery对象时出现了问题。所以我创建了一个新的SPQuery,一切都很好。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19702029

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档