文件签出()Sharepoint

文件签出()Sharepoint,sharepoint,checkout,Sharepoint,Checkout,我试图签出文件,但我得到了奇怪的异常,我不明白 ServerExeption未受影响 服务器相对论 参数名称:serverRelativeUrl参数不支持指定的值 请你解释一下这是什么意思,我做错了什么 public void CheckOut(string filePath) { Microsoft.SharePoint.Client.ClientContext context = new Microsoft.SharePoint.Client.ClientContex

我试图签出文件,但我得到了奇怪的异常,我不明白

ServerExeption未受影响 服务器相对论 参数名称:serverRelativeUrl参数不支持指定的值

请你解释一下这是什么意思,我做错了什么

public void CheckOut(string filePath)
{

   Microsoft.SharePoint.Client.ClientContext context = new     
   Microsoft.SharePoint.Client.ClientContext("http://sharepointsite");
        context.Credentials = CredentialCache.DefaultNetworkCredentials;

   Microsoft.SharePoint.Client.Web web = context.Web;
   Microsoft.SharePoint.Client.File file = web.GetFileByServerRelativeUrl(filePath);

   file.CheckOut();
   context.Load(web);
   context.Load(file);
   context.ExecuteQuery();
}

尝试将文件的服务器相对URL作为参数传递:

Uri uri = new Uri(filePath);
Microsoft.SharePoint.Client.File file = 
    web.GetFileByServerRelativeUrl(uri.LocalPath);
context.Load(file)
context.ExecuteQuery();

if (file.CheckOutType == CheckOutType.None)
{
   file.CheckOut();
}

不幸的是,这没有帮助,仍然是同样的问题(如果我使用Web服务而不是模型对象,它工作得很好。但是我真的想使用DLL,因为我的整个功能都依赖于它。您在签出之前加载(文件)和ExecuteQuery()了吗?是的,我尝试了两种方法。但是得到了相同的异常。异常发生在context.ExecuteQuery()上;lineCheck you parameter format.Ex:Microsoft.SharePoint.Client.File File=web.GetFileByServerRelativeUrl(“/Site/DocLibrary/wiki.xml”);URL应该在SharePoint服务器下:您的文件路径是否以斜杠符号(/)开头?我在使用REST API时注意到了相同的错误,文件名的开头缺少/处。