执行caml查询以获取查找字段:“无法完成此操作。请重试。”?

问题描述 投票:0回答:1

这是我的caml查询代码,用于在SharePoint 2016内部部署(CSOM)中获取查找字段的值。

<View>
                                <Query>
                                    <Where>
                                        <Eq>
                                            <FieldRef Name='myLookupField' LookupId='TRUE'/>
                                            <Value Type='Lookup'>18456</Value>
                                        </Eq>
                                    </Where>
                                </Query>
                            </View>

尝试删除此部分“ LookupId ='TRUE'”,但仍然出现此异常:“无法完成此操作。请重试。”我在U2U caml查询生成器中运行此caml查询,但它可以工作。

c# sharepoint visual-studio-2015 caml lookupfield
1个回答
0
投票
如下所示在CSOM中经过测试的CAML,它正在工作:

using (ClientContext ctx=new ClientContext("http://sp/sites/dev/")) { List list = ctx.Web.Lists.GetByTitle("MyList22"); CamlQuery caml = new CamlQuery(); caml.ViewXml = "<View><Query><Where><Eq><FieldRef Name='myLookupField' LookupId='TRUE'/><Value Type='Lookup'>1</Value></Eq></Where></Query></View>"; ListItemCollection items = list.GetItems(caml); ctx.Load(items); ctx.ExecuteQuery(); foreach (ListItem item in items) { FieldLookupValue value = item["myLookupField"] as FieldLookupValue; Console.WriteLine("LookupId: "+ value.LookupId); Console.WriteLine("LookupValue: "+ value.LookupValue); } }

© www.soinside.com 2019 - 2024. All rights reserved.