从SharePoint列表中检索项目

时间:2017-06-26 10:30:05

标签: c# sharepoint-online

我在网上搜索过这个问题,但没有结果符合我的问题。

我正在尝试在sharepoint在线列表中检索特定列,并将其与当前登录的用户进行比较。到目前为止,这是我的代码。

var spContext = SharePointContextProvider.Current.GetSharePointContext((HttpContext));

        using (var clientContext = spContext.CreateUserClientContextForSPHost())
        {
            if (clientContext != null)
            {
                var user = GetUser(clientContext);
                var items = LoadList(clientContext);

                foreach (ListItem listItem in items)
                {
                    if (user.Title == listItem["Author"].ToString())
                    {
                        //Do stuff later
                    }
                }

            }
        }

     public ListItemCollection LoadList(ClientContext context)
    {
        List announcementsList = context.Web.Lists.GetByTitle("Arbetsplan");
        CamlQuery query = CamlQuery.CreateAllItemsQuery();
        ListItemCollection items = announcementsList.GetItems(query);
        context.Load(items);
        context.ExecuteQuery();
        return items;
    }

    public User GetUser(ClientContext context)
    {
        var user = context.Web.CurrentUser;
        context.Load(user);
        context.ExecuteQuery();

        return user;
    }

我得到的错误是这样的:

enter image description here

Author列属于类型 Person or Group。我知道这就是问题所在。我没有正确处理这个类型?

SharePoint列表中的“作者”字段名为“创建者”。但要达到它,我必须使用intrenal名称。enter image description here

0 个答案:

没有答案