12

我有一个SP在线网站,我存储文档,我没有问题添加/检索文档,但在删除流程中我在检索File对象时收到错误。Web.GetFileByServerRelativeUrl引发“值不符合预期范围”

public static void DeleteDocument() 
{ 
    using (ClientContext ctx = ClientContextFactory.Create("https://my-sponline-site.sharepoint.com/sites/documentsite")) 
    { 
     Web web = ctx.Web; 
     ctx.Load(web); 
     ctx.ExecuteQuery(); 

     string relativeUrl = "/Documents/images.jpg"; 

     File file = web.GetFileByServerRelativeUrl(relativeUrl); 
     ctx.Load(file); 
     file.DeleteObject(); 

     ctx.ExecuteQuery(); 
    } 
} 

全部文件的URL为 “https://my-sponline-site.sharepoint.com/sites/documentsite/Documents/images.jpg”(没有更多的访问2016年12月7日)

当我执行,我得到一个ServerException

值不在在预期范围内。

上下文因为我能够从库中添加/检索项目和上下文用户管理员工作正常。

我试图将网址添加到relativeUrl,所以它会是“/documentsite/Documents/images.jpg”,但我得到了同样的错误。

我似乎无法弄清楚,有什么建议吗?

感谢

+2

自serverrelative - 你应该添加/网站/ documentsite –

+1

似乎值得一提的是,虽然文件检索想要一个serverrelative URL,看来你还需要使用创建上下文与正确的网站的URL(否则你会得到相同的“价值不符合预期的范围”错误)。 – mwardm

回答

22
string relativeUrl = "/sites/documentsite/Documents/images.jpg"; 
相关问题