gpt4 book ai didi

c# - 无法在 C# 中使用 CAMLQuery 从 SharePoint 列表中检索列表项

转载 作者:行者123 更新时间:2023-12-03 04:03:21 25 4
gpt4 key购买 nike

我无法使用 C# 中的 CAMLQuery 获取 SharePoint 列表中的列表项。我拥有管理员权限,并且能够获取列表的列名称,但获取列表项计数为 0。

有人可以帮我解决这个问题吗?下面是代码。这里我们得到的“collListItem”值为 0

  cc.Load(cc.Web, p => p.Lists);
cc.ExecuteQuery();
var lst = cc.Web.Lists.GetByTitle("Tracker List");
cc.Load(lst.Fields);
cc.ExecuteQuery();
Console.WriteLine("\n Columns \n");

foreach (var item in lst.Fields)
{
if (item.Hidden == false)
{
Console.WriteLine(item.Title);
}
}
CamlQuery camlQuery = new CamlQuery();
camlQuery.ViewXml = "<View><Query><OrderBy><FieldRef Name='Created' Ascending='false' /></OrderBy></Query><RowLimit>5</RowLimit></View>";
ListItemCollection collListItem = lst.GetItems(camlQuery);
cc.Load(collListItem);
cc.ExecuteQuery();

最佳答案

感谢您的回复,但它对我们不起作用。我们使用 app-id 和 Secret 来获取列表项,并使用 OfficeDevPnP Nuget。我们是 SharePoint 应用程序的所有者,并且已经为集合提供了完全控制权。我们能够获取特定列表的集合名称、字段名称,但不能获取 ListItems。示例代码仅供引用。

 using OfficeDevPnP.Core;
using Microsoft.SharePoint.Client;

using (var clientContext = new AuthenticationManager().GetAppOnlyAuthenticatedContext(siteUrl, appId, appSecret))
{

CamlQuery caml = new CamlQuery();
caml.ViewXml = "<View><Query><OrderBy><FieldRef Name='Created' Ascending='false' /></OrderBy></Query><RowLimit>5</RowLimit></View>";

var requestItems = clientContext.Web.Lists.GetByTitle(listName).GetItems(caml);
clientContext.Load(requestItems);
clientContext.ExecuteQuery();
foreach (var item in requestItems)
{
Console.WriteLine(item["Title"]);
}
}

关于c# - 无法在 C# 中使用 CAMLQuery 从 SharePoint 列表中检索列表项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61136141/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com