c#客户端对象

本文关键字:对象 客户端 | 更新日期: 2023-09-27 18:12:51

我想读取一个特定的SharePoint列表到一个数据表。我正在努力阅读查找值。例子:客户列表,每个客户被分配给一个团队成员。团队成员是查找团队成员列表。

我有以下问题:1)。如何获取链接到此查找字段的列表的信息?2)。如何读取字段,获取值或索引?

我在下面添加了我的函数,非常感谢你帮助一个绝望的SharePoint新手…

Volker

   public System.Data.DataTable ReadDatafromSPList(ClientContext clientContext, string ListName, string ViewName)
    {
        Web site = clientContext.Web;
        List list = site.Lists.GetByTitle(ListName);
        View view = list.Views.GetByTitle(ViewName);
        ViewFieldCollection viewFields = view.ViewFields;
        clientContext.Load(view);
        clientContext.ExecuteQuery();
        CamlQuery camlQuery = new CamlQuery();
        camlQuery.ViewXml = view.ViewQuery;
       ListItemCollection ListColletion = list.GetItems(camlQuery);
        clientContext.Load(list);
        clientContext.Load(ListColletion);
        clientContext.Load(viewFields);
        clientContext.ExecuteQuery();
       string[] headers  = view.ViewFields.ToArray();
       System.Data.DataTable dTable = new System.Data.DataTable();
       foreach (string header in headers)
           {
                dTable.Columns.Add(header);
           }
        string str="";
       foreach (ListItem item in ListColletion)
         {
               dTable.Rows.Add(dTable.NewRow());
              foreach (string header in headers)
              {
                  try
                  {
                      str = item[header].ToString();
                      if (str == "Microsoft.SharePoint.Client.FieldLookupValue")
                      {
                        //??????????????????
                       //??????????????????
                      }
                      dTable.Rows[dTable.Rows.Count - 1][header] = str;
                  }
                  catch
                  {
                      dTable.Rows[dTable.Rows.Count - 1][header] = "";
                  }
              }
           }
      return    dTable;
    }

c#客户端对象

试试这个…

ClientContext context = new ClientContext(ServerText.Text);
List list = context.Web.Lists.GetByTitle("Tasks");
CamlQuery query = new CamlQuery();
query.ViewXml = "<View/>";
ListItemCollection items = list.GetItems(query);
context.Load(list);
context.Load(items);
context.ExecuteQuery();
DataTable table = new DataTable();
table.Columns.Add("Id");
table.Columns.Add("Title");
foreach (ListItem item in items)
table.Rows.Add(item.Id, item["Title"]);
相关文章: