Sharepoint 2013 Web API按ListItemAllFields排序

时间:2015-06-23 13:46:06

标签: sharepoint sharepoint-2013

我正在使用SP 2013文档库来支持ASP.NET MVC Web应用程序。我只能使用web api来访问doc库。我想要做的是使用OData对我添加到doc库的一些自定义列进行一些过滤和排序。访问它们的方法是扩展ListItemAllFields。当我尝试$ orderby或$ filter其中一个嵌套属性时,我收到一个错误。

我的来电看起来像这样:

https://<site>/sites/iro/_api/web/lists/getbytitle('TestDocs')/rootfolder/folders('TestFolder')/files?$expand=ListItemAllFields&$orderby=ListItemAllFields/CustomColumn

SP的回复是400,如下:

{
    "error": {
        "code": "-1, Microsoft.SharePoint.Client.InvalidClientQueryException",
        "message": {
            "lang": "en-US",
            "value": "Field or property \"CustomColumn\" does not exist."
        }
    }
}

我尝试在文档库级别使用项目,这些项目将所有列作为平面对象返回,但项目调用在文件夹级别不起作用。由于我只想访问特定文件夹中的文档,因此这是一项要求。

感谢您的任何建议!

1 个答案:

答案 0 :(得分:0)

您可以通过以下REST调用获取 perticular文件夹中的所有文件。

http:<site>/_api/web/GetFolderByServerRelativeUrl('Backup Library/Filtered')/Files

哪里

  • 备份库是我的库名称
  • 已过滤是库
  • 下的文件夹

Url经过测试并按预期工作。