C# 无法使用C中的CAMLQuery从SharePoint列表检索列表项#

C# 无法使用C中的CAMLQuery从SharePoint列表检索列表项#,c#,azure,sharepoint,caml,C#,Azure,Sharepoint,Caml,我无法使用C#中的CAMLQuery获取SharePoint列表中的列表项。我拥有管理员权限,能够获取列表的列名,但获取列表项的计数为0 有人能帮我吗?下面是代码。这里我们得到的“collListItem”的值为0 cc.Load(cc.Web,p=>p.Lists); cc.ExecuteQuery(); var lst=cc.Web.Lists.GetByTitle(“跟踪列表”); cc.负载(第一个字段); cc.ExecuteQuery(); Console.WriteLine(“\n

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

有人能帮我吗?下面是代码。这里我们得到的“collListItem”的值为0

cc.Load(cc.Web,p=>p.Lists);
cc.ExecuteQuery();
var lst=cc.Web.Lists.GetByTitle(“跟踪列表”);
cc.负载(第一个字段);
cc.ExecuteQuery();
Console.WriteLine(“\n列\n”);
foreach(列表字段中的变量项)
{
如果(item.Hidden==false)
{
控制台写入线(项目名称);
}
}
CamlQuery CamlQuery=新的CamlQuery();
camlQuery.ViewXml=“5”;
ListItemCollection collListItem=lst.GetItems(camlQuery);
cc.荷载(分项);
cc.ExecuteQuery();
示例演示:

using (var clientContext = new ClientContext("http://sp"))
            {

                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("Test").GetItems(caml);
                clientContext.Load(requestItems);
                clientContext.ExecuteQuery();
                foreach(var item in requestItems)
                {
                    Console.WriteLine(item["Title"]);
                }
使用(var clientContext=new clientContext(“http://sp"))
{
CamlQuery caml=新的CamlQuery();
caml.ViewXml=“5”;
var requestItems=clientContext.Web.Lists.GetByTitle(“测试”).GetItems(caml);
加载(requestItems);
clientContext.ExecuteQuery();
foreach(requestItems中的var项)
{
Console.WriteLine(项目[“标题]);
}
示例演示:

using (var clientContext = new ClientContext("http://sp"))
            {

                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("Test").GetItems(caml);
                clientContext.Load(requestItems);
                clientContext.ExecuteQuery();
                foreach(var item in requestItems)
                {
                    Console.WriteLine(item["Title"]);
                }
使用(var clientContext=new clientContext(“http://sp"))
{
CamlQuery caml=新的CamlQuery();
caml.ViewXml=“5”;
var requestItems=clientContext.Web.Lists.GetByTitle(“测试”).GetItems(caml);
加载(requestItems);
clientContext.ExecuteQuery();
foreach(requestItems中的var项)
{
Console.WriteLine(项目[“标题]);
}

感谢您的回复,但这对我们不起作用。我们正在使用应用程序id和secret获取列表项,并使用OfficeDevPnP Nuget获取列表项。我们是SharePoint应用程序的所有者,已经完全控制了集合。我们可以获取集合名称、特定列表的字段名称,但不能获取列表项。示例代码已剪切以供参考埃伦斯

使用OfficeDevPnP.Core; 使用Microsoft.SharePoint.Client

使用(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"]);
            }
CamlQuery caml=new CamlQuery();
caml.ViewXml=“5”;
var requestItems=clientContext.Web.Lists.GetByTitle(listName).GetItems(caml);
加载(requestItems);
clientContext.ExecuteQuery();
foreach(requestItems中的var项)
{
Console.WriteLine(项目[“标题]);
}

}

谢谢回复,但这对我们不起作用。我们正在使用应用程序id和secret获取列表项,并使用OfficeDevPnP Nuget获取列表项。我们是SharePoint应用程序的所有者,已经完全控制了集合。我们可以获取集合名称、特定列表的字段名称,但不能获取列表项。示例代码已剪切以供参考恩斯

使用OfficeDevPnP.Core; 使用Microsoft.SharePoint.Client

使用(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"]);
            }
CamlQuery caml=new CamlQuery();
caml.ViewXml=“5”;
var requestItems=clientContext.Web.Lists.GetByTitle(listName).GetItems(caml);
加载(requestItems);
clientContext.ExecuteQuery();
foreach(requestItems中的var项)
{
Console.WriteLine(项目[“标题]);
}

}

谢谢你的回复。上面的代码对我不起作用。我们正在使用AppId、AppSecret获取项目,并使用我的同事Sudhanshu添加的相同的上面的代码。我们正在跟踪此链接:我正在使用相同的上面的代码,但仍然没有结果。可能是什么问题?请帮助我获得你的回复。上面的代码不起作用g为我。我们正在使用AppId、AppSecret获取项目,并使用我的同事Sudhanshu添加的相同上述代码。我们正在跟踪此链接:我使用相同的上述代码,但仍然没有结果。可能是什么问题?请帮助我