猿问

使用 CSOM for Sharepoint Online 筛选 TaxonomyFieldType

对于客户,我必须通过过滤元数据从他们的共享点检索文件。我必须过滤的两个字段是 TaxonomyFieldType 字段。我一直在寻找解决方案,我找到了一些示例,向我展示了如何使用 CAML 查询进行过滤,但它对我不起作用。该列表没有被过滤,而是向我显示所有文件。


ClientContext clientContext = SP.Helpers.ConnectionHelpers.Auth(username, password, siteurl);


if (clientContext == null) return;


List oList = clientContext.Web.Lists.GetByTitle("list");

clientContext.Load(oList);

clientContext.ExecuteQuery();


View view = oList.Views.GetByTitle("view");

clientContext.Load(view);

clientContext.ExecuteQuery();


CamlQuery camlQuery = new CamlQuery();


string query = @"<Where><Contains><FieldRef Name='field' /><Value Type='Text'>filtertext</Value></Contains></Where>";

camlQuery.ViewXml = query;


ListItemCollection collListItem = oList.GetItems(camlQuery);


clientContext.Load(collListItem, items => items.Include(

            item => item.Id,

            item => item.DisplayName, item => item.Properties));


clientContext.ExecuteQuery();

上面的代码是我目前想到的。有谁知道如何可靠地过滤 TaxonomyFieldTypes?


暮色呼如
浏览 182回答 2
2回答

忽然笑

我认为您可以尝试使用以下代码进行查询:<View>&nbsp; <Query>&nbsp; &nbsp; <Where>&nbsp; &nbsp; &nbsp; &nbsp; <Contains>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <FieldRef Name='field' />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <Value Type='Text'>filtertext</Value>&nbsp; &nbsp; &nbsp; &nbsp; </Contains>&nbsp; &nbsp; </Where>&nbsp; </Query></View>并将“字段”替换为“查询字段名称的名称”,以及“过滤器文本”。
随时随地看视频慕课网APP
我要回答