REST请求的SharePoint更改列id 我最近开始使用SharePoint 2013基金会的REST API,我试图返回列表中的所有条目。我的GET请求返回我正在查找的数据,但是用于标识列表中的列的ID对于标识信息没有帮助(请参见下图)。在第二幅图中,“Title”和“ID”之间的列ID是一堆字符

REST请求的SharePoint更改列id 我最近开始使用SharePoint 2013基金会的REST API,我试图返回列表中的所有条目。我的GET请求返回我正在查找的数据,但是用于标识列表中的列的ID对于标识信息没有帮助(请参见下图)。在第二幅图中,“Title”和“ID”之间的列ID是一堆字符,api,rest,sharepoint,sharepoint-2013,Api,Rest,Sharepoint,Sharepoint 2013,有没有办法将列表配置为使用列名作为ID?另外,当前用作ID的字符是否有某些意义?您需要再次请求获取列列表,其中包括您试图引用的内部名称和标题: 您可以使用此REST调用: _api/web/lists/GetByTitle('Project Details')/fields 或者您可以使用CSOM: using (ClientContext context = new ClientContext(url)) { List list = context.Web.Lists.GetByTit


有没有办法将列表配置为使用列名作为ID?另外,当前用作ID的字符是否有某些意义?

您需要再次请求获取列列表,其中包括您试图引用的内部名称和标题:

您可以使用此REST调用:

_api/web/lists/GetByTitle('Project Details')/fields
或者您可以使用CSOM:

using (ClientContext context = new ClientContext(url))
{
   List list = context.Web.Lists.GetByTitle("Project Details");
   context.Load(list, l => l.Fields);
   context.ExecuteQuery();
   foreach(Field field in list.Fields)
   {
      Console.WriteLine(field.Title);
      Console.WriteLine(field.InternalName);
   }
}

SharePoint自动生成InternalName,并且它是一个只读字段,至少使用REST。与更改值相比,获取字段数据以将InternalName与标题关联起来更容易。

在标题和Id之间,您所指的列是与项目关联的内容类型的Id。它不是列ID

SharePoint REST API与OData兼容,因此您可以使用$select参数查询必需字段

http://server/site/_api/web/lists('guid')/items?$select=Column1,Column2
但是请注意,查找字段也需要展开,否则只能获得查找项的Id

http://server/site/_api/web/lists('guid')/items?$select=LookupColumn&$expand=LookupColumn/Title