单击按钮时,在 asp.net 中尚未初始化 Sharepoint 集合 - C# asp.net

rs1

我是 Sharepoint 的新手,在参考 url - Access SharePoint online using client object model - Forbidden error 后,我成功连接到 sharepoint 并在控制台应用程序 C# 中检索详细信息。我的问题是当我将相同的代码移动到 asp.net 网站时,它给我集合尚未初始化错误。这是代码

using (ClientContext clientContext = new ClientContext("https://.../sites/.../"))
        {
            SecureString passWord = new SecureString();

            foreach (char c in "abcdefghijklmnop".ToCharArray()) passWord.AppendChar(c);
            clientContext.Credentials = new SharePointOnlineCredentials("[email protected]", passWord);
            List list = clientContext.Web.Lists.GetByTitle("ABC DEF");
            CamlQuery camlQuery = new CamlQuery();
            camlQuery.ViewXml = "<View><RowLimit>1200</RowLimit></View>";
            ListItemCollection collListItem = list.GetItems(camlQuery);
            clientContext.Load(collListItem, li => li.Include(
                            pi => pi.Id,
                            pi => pi["Title"],
                            pi => pi["Application"],
                            pi => pi["URL"],
                            pi => pi["AIR_x0020_ID"]

                ));

            clientContext.ExecuteQuery();
            List<string> listofapplications = new List<string>();
            foreach (ListItem oListItem in collListItem)
            {
                { Console.WriteLine(oListItem["Title"] + ", Application " + oListItem["Application"]); }
            }
            Console.ReadLine();
        }

它给了我 foreach(Listitem oListItem in collListItem) 的错误:

Microsoft.SharePoint.Client.Runtime.dll 中出现“Microsoft.SharePoint.Client.CollectionNotInitializedException”类型的异常,但未在用户代码中处理

附加信息:集合尚未初始化。尚未请求或尚未执行请求。可能需要明确请求。

这是详细的错误:

Microsoft.SharePoint.Client.CollectionNotInitializedException 未由用户代码处理 HResult=-2146233079 Message=集合尚未初始化。尚未请求或尚未执行请求。可能需要明确请求。
Source=Microsoft.SharePoint.Client.Runtime StackTrace:在 Microsoft.SharePoint.Client.ClientObjectCollection`1.d__0.MoveNext() 在 Home.btn_Click(Object sender, EventArgs e) in c:\Users\rakesh.a.srivastava\ Documents\Visual Studio 2015\WebSites\DNSProvisioningPortal\Home.aspx.cs:line 45 at System.Web.UI.WebControls.Button.OnClick(EventArgs e) at System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument)在 System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) 在 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) 在 System.Web.UI.Page。 RaisePostBackEvent(NameValueCollection postData) 在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
内部异常:

请注意,我在控制台应用程序中没有遇到任何问题,而是在 asp.net 按钮单击操作中遇到了任何问题。我还添加了 Client 和 Client.Runtime 引用!我无法理解为什么它在控制台中有效,但在网站中无效。我是否缺少任何命名空间,参考?我已经提到了这些 URL集合尚未初始化Sharepoint 字段尚未在 C# 中初始化Sharepoint 客户端对象模型 属性或字段尚未初始化,但没有任何东西告诉我有关我的问题的任何信息。请帮忙。谢谢

苏圣哉

根据我的测试,有时候我们可以忽略aspnet项目中的异常。(对于您的代码,您需要将 ["XXX"] 替换为 Client_XXX)

准备

通过 NuGet 包管理器安装Microsoft.SharePointOnline.CSOM到项目。

我的测试代码:首先是扩展方法(可选)

public static class CSOMExtensions
    {
        public static Task ExecuteQueryAsync(this ClientContext clientContext)
        {
            return Task.Factory.StartNew(() =>
            {
                clientContext.ExecuteQuery();
            });
        }
    }

用我的替换你帖子中的一些代码:

 List list = clientContext.Web.Lists.GetByTitle("CustomList1");
 CamlQuery camlQuery = new CamlQuery();
 camlQuery.ViewXml = "<View><RowLimit>1200</RowLimit></View>";
 ListItemCollection collListItem = list.GetItems(camlQuery);

 clientContext.Load(collListItem, li => li.Include( 
                        pi => pi.Client_Title
                      //pi => pi["Application"],
                      // pi => pi["AIR_x0020_ID"]
            ));

//clientContext.ExecuteQueryAsync();

Task t2 = clientContext.ExecuteQueryAsync();

await t2.ContinueWith((t) =>
{
   foreach (ListItem oListItem in collListItem)
   {
     System.Diagnostics.Debug.WriteLine(oListItem.Client_Title); 
   }
});

如果我们直接使用 ["Title"],它会在 aspnet 中崩溃,但 Client_XXX 不会站在我这边。

我没有深入研究为什么也没有尝试自定义字段。我会在有时间的时候研究更多

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在asp.net中单击按钮时单击空文本框的Javascript验证

来自分类Dev

使用ASP.NET或Sharepoint

来自分类Dev

在asp.net中单击按钮时页面刷新

来自分类Dev

单击ASP.net C#中的按钮后发送电子邮件

来自分类Dev

如何在gridview RowDataBound中创建按钮单击事件c#asp.net

来自分类Dev

无法在ASP.NET MVC中初始化SelectList

来自分类Dev

按钮单击事件在ASP.NET C#之后的代码中不起作用

来自分类Dev

在ASP.NET MVC中单击按钮时呈现部分视图

来自分类Dev

C#asp.net按钮单击不显示标签

来自分类Dev

sharepoint Javascript集合尚未初始化

来自分类Dev

当我单击gridview中的“编辑”按钮时,如何调用“删除行”事件?asp.net C#

来自分类Dev

在ASP.NET C#中,按钮单击事件中的文本框值不会更改

来自分类Dev

在asp.net c#中单击按钮后进行输入验证后,打开Bootstrap Modal

来自分类Dev

ASP.NET Core测试-在Fixture中初始化InMemory SQLite dbcontext时获取NullReferenceException

来自分类Dev

导航到ASP.NET Core 3.1 MVC中单击按钮时的新视图

来自分类Dev

单击ASP.NET按钮时在Gridview中启用Linkbutton

来自分类Dev

在ASP.NET和Sharepoint 2010中启用SessionState问题

来自分类Dev

在按钮上发送参数单击。(ASP .NET C#)

来自分类Dev

单击按钮时显示gif,功能完成后在asp.net中隐藏

来自分类Dev

单击ASP.NET中的任何按钮时,返回到当前区域性

来自分类Dev

如何在asp.net中单击按钮时在response.redirect中编写脚本警报

来自分类Dev

当我单击gridview asp.net中的下载按钮时,没有任何反应

来自分类Dev

尚未使用c#asp.net初始化ConnectionString属性

来自分类Dev

当您单击ASP.NET中的“提交”按钮时,使表单不刷新

来自分类Dev

单击“更新中”时,UpdatePanel中的C#ASP.NET CheckBox不注册单击

来自分类Dev

在Model Asp.net C#中初始化值

来自分类Dev

ASP.NET App初始化

来自分类Dev

Asp.net MVC 5,单击按钮时显示标签?

来自分类Dev

在 ASP.Net MVC 中单击按钮时处于活动状态还是非活动状态?

Related 相关文章

  1. 1

    在asp.net中单击按钮时单击空文本框的Javascript验证

  2. 2

    使用ASP.NET或Sharepoint

  3. 3

    在asp.net中单击按钮时页面刷新

  4. 4

    单击ASP.net C#中的按钮后发送电子邮件

  5. 5

    如何在gridview RowDataBound中创建按钮单击事件c#asp.net

  6. 6

    无法在ASP.NET MVC中初始化SelectList

  7. 7

    按钮单击事件在ASP.NET C#之后的代码中不起作用

  8. 8

    在ASP.NET MVC中单击按钮时呈现部分视图

  9. 9

    C#asp.net按钮单击不显示标签

  10. 10

    sharepoint Javascript集合尚未初始化

  11. 11

    当我单击gridview中的“编辑”按钮时,如何调用“删除行”事件?asp.net C#

  12. 12

    在ASP.NET C#中,按钮单击事件中的文本框值不会更改

  13. 13

    在asp.net c#中单击按钮后进行输入验证后,打开Bootstrap Modal

  14. 14

    ASP.NET Core测试-在Fixture中初始化InMemory SQLite dbcontext时获取NullReferenceException

  15. 15

    导航到ASP.NET Core 3.1 MVC中单击按钮时的新视图

  16. 16

    单击ASP.NET按钮时在Gridview中启用Linkbutton

  17. 17

    在ASP.NET和Sharepoint 2010中启用SessionState问题

  18. 18

    在按钮上发送参数单击。(ASP .NET C#)

  19. 19

    单击按钮时显示gif,功能完成后在asp.net中隐藏

  20. 20

    单击ASP.NET中的任何按钮时,返回到当前区域性

  21. 21

    如何在asp.net中单击按钮时在response.redirect中编写脚本警报

  22. 22

    当我单击gridview asp.net中的下载按钮时,没有任何反应

  23. 23

    尚未使用c#asp.net初始化ConnectionString属性

  24. 24

    当您单击ASP.NET中的“提交”按钮时,使表单不刷新

  25. 25

    单击“更新中”时,UpdatePanel中的C#ASP.NET CheckBox不注册单击

  26. 26

    在Model Asp.net C#中初始化值

  27. 27

    ASP.NET App初始化

  28. 28

    Asp.net MVC 5,单击按钮时显示标签?

  29. 29

    在 ASP.Net MVC 中单击按钮时处于活动状态还是非活动状态?

热门标签

归档