【问题标题】:How to check out a document from a remote sharepoint server programatically (c#)如何以编程方式从远程共享点服务器签出文档(c#)
【发布时间】:2011-12-20 23:46:21
【问题描述】:

我做了很多关于如何做到这一点的研究,但没有找到解决方案...... 我的用例如下: 我们的企业内联网 (SharePoint) 上有一些 Excel 表格;我的软件需要检查它们、打开它们、编辑并再次检查(从客户端计算机)。我可以通过 unc 路径 (\server\whatever.xls) 访问这些文件。作为一种解决方法,现在我可以将它们复制到本地机器,进行去编辑,保存它们,但由于它们没有被检出,我无法再次上传它们。

有什么办法吗?

当我把它变红时,SPFile.CheckOut 应该可以解决问题,但我没有找到任何有关如何找到 Microsoft.SharePoint.dll 的信息...

提前致谢, 亚当

【问题讨论】:

  • 您需要在计算机上安装 SharePoint 才能使用 Microsoft.SharePoint.dll。还可以尝试了解如何使用 SharePoint 客户端对象模型来签出文件。

标签: c# sharepoint checkout


【解决方案1】:

我假设您是在未托管 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 服务器的计算机上,您还需要在类似的环境中编译代码。

【讨论】:

  • 你不能用非本地 URL 打开一个 SPSite 吗?
  • @bzlm:无法理解您的担忧。
  • 我只是在谈论SharePoint Client Object Model
  • 是的,就是这样,SP 托管在另一台机器上。我认为这会起作用,但是 Web_Reference_Folder 是什么/在哪里?
猜你喜欢
  • 2016-08-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-11-21
  • 2013-02-19
  • 1970-01-01
  • 2016-11-26
  • 2018-11-09
相关资源
最近更新 更多