我做了很多关于如何做到这一点的研究,但没有找到解决方案...... 我的用例如下: 我们的企业内部网(SharePoint)上有一些excel表;我的软件需要检查它们,打开它们,编辑并再次检查(从客户端机器)。我可以通过unc路径(\ server \ whatever.xls)访问文件。现在我可以将它们复制到本地机器,进行编辑,保存,但由于它们没有签出,我无法再次上传。
有没有办法做到这一点?
当我重新启动它时,SPFile.CheckOut应该可以解决这个问题,但我没有找到有关如何找到Microsoft.SharePoint.dll的任何信息......
提前致谢, 亚当
答案 0 :(得分:0)
我假设您在未托管SharePoint的计算机上运行代码。并且您希望远程签出文件。在这种情况下,请使用ListService表单SharePoint执行此操作。
这是一个小例子:
Web_Reference_Folder.Lists listService = new Web_Reference_Folder.Lists();
listService.Credentials = System.Net.CredentialCache.DefaultCredentials;
string fileCheckout = "http://Server_Name/sites/Subsite/Shared Documents/MyFile.txt";
bool myResults = listService.CheckOutFile(fileCheckout, "true", "20 Jun 2006 12:00:00 GMT");
您可以在此处查看SharePoint的所有服务:
http://msdn.microsoft.com/en-us/library/dd878586%28v=office.12%29.aspx
如果您在安装了SharePoint的计算机上运行代码,则在这种情况下,您可以添加对Microsoft.SharePoint.dll的引用并继续。如果您希望将代码部署到也将托管SharePoint服务器的计算机上,则还需要在类似的环境中编译代码。