我最近开始尝试使用SharePoint 2013 Foundation的REST API,我试图返回列表中的所有条目。我的GET请求返回我要查找的数据,但用于标识列表中列的ID无助于识别信息(见下图)。标题'之间的列ID和第二张图片中的ID'是混乱的字符。
有没有办法配置列表以使用列名作为ID?此外,目前用作ID的字符是否有一些重要意义?
答案 0 :(得分:0)
您需要发出第二个请求,以获取包含InternalName和Title的列表,这是您要引用的内容:
您可以使用此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。将字段数据与标题相关联比更改值更容易。[/ p>
答案 1 :(得分:-1)
您在“标题”和“标识”之间引用的列是与该项关联的内容类型的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