无法使用客户端对象模型从SharePoint库中检索文件信息

时间:2014-12-10 15:18:37

标签: c# sharepoint sharepoint-2010

我正在尝试使用客户端对象模型从SharePoint 2010库中的文件中读取某些属性。 这是样本

using SP = Microsoft.SharePoint.Client;

SP.ClientContext clientContext = new SP.ClientContext( "http://path/to/the/site" );
clientContext.Load( clientContext.Web );
clientContext.ExecuteQuery();

SP.File spFile = clientContext.Web.GetFileByServerRelativeUrl("/TestLibrary/sample.pdf");
clientContext.Load(spFile);
clientContext.ExecuteQuery(); //here we'll catch exception

但我接受例外。

  

类型的第一次机会异常   发生了'Microsoft.SharePoint.Client.ServerException'   Microsoft.SharePoint.Client.Runtime.dll

其他信息:价值不在预期范围内。

我做错了什么?

1 个答案:

答案 0 :(得分:2)

Web.GetFileByServerRelativeUrl method以下列格式接受Value does not fall within the expected range.参数后发生错误serverRelativeUrl

/Site_Name/SubSite_Name/Library_Name/File_Name

示例:

using (var ctx = new ClientContext("https://intranet.contoso.com/news"))
{
    var file = ctx.Web.GetFileByServerRelativeUrl("/news/Documents/SharePoint User Guide.docx");
    ctx.Load(file);
    ctx.ExecuteQuery();  
}